FileInfo.OpenWrite Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt einen lesegeschützten FileStream.
public:
System::IO::FileStream ^ OpenWrite();
public System.IO.FileStream OpenWrite ();
member this.OpenWrite : unit -> System.IO.FileStream
Public Function OpenWrite () As FileStream
Gibt zurück
Ein lesegeschütztes nicht freigegebenes FileStream-Objekt für eine neue oder existierende Datei.
Ausnahmen
Der beim Erstellen einer Instanz des FileInfo-Objekts angegebene Pfad ist schreibgeschützt oder entspricht einem Verzeichnis.
Der beim Erstellen einer Instanz des FileInfo-Objekts angegebene Pfad ist ungültig, z. B. befindet er sich auf einem nicht zugeordneten Laufwerk.
Beispiele
Im folgenden Beispiel wird eine Datei zum Schreiben geöffnet und dann aus der Datei gelesen.
using namespace System;
using namespace System::IO;
using namespace System::Text;
int main()
{
String^ path = "c:\\Temp\\MyTest.txt";
FileInfo^ fi = gcnew FileInfo( path );
// Open the stream for writing.
{
FileStream^ fs = fi->OpenWrite();
try
{
array<Byte>^info = (gcnew UTF8Encoding( true ))->GetBytes( "This is to test the OpenWrite method." );
// Add some information to the file.
fs->Write( info, 0, info->Length );
}
finally
{
if ( fs )
delete (IDisposable^)fs;
}
}
// Open the stream and read it back.
{
FileStream^ fs = fi->OpenRead();
try
{
array<Byte>^b = gcnew array<Byte>(1024);
UTF8Encoding^ temp = gcnew UTF8Encoding( true );
while ( fs->Read( b, 0, b->Length ) > 0 )
{
Console::WriteLine( temp->GetString( b ) );
}
}
finally
{
if ( fs )
delete (IDisposable^)fs;
}
}
}
//This code produces output similar to the following;
//results may vary based on the computer/file structure/etc.:
//
//This is to test the OpenWrite method.
//
//
//
//
//
//
//
//
//
//
//
//
using System;
using System.IO;
using System.Text;
class Test
{
public static void Main()
{
string path = @"c:\Temp\MyTest.txt";
FileInfo fi = new FileInfo(path);
// Open the stream for writing.
using (FileStream fs = fi.OpenWrite())
{
Byte[] info =
new UTF8Encoding(true).GetBytes("This is to test the OpenWrite method.");
// Add some information to the file.
fs.Write(info, 0, info.Length);
}
// Open the stream and read it back.
using (FileStream fs = fi.OpenRead())
{
byte[] b = new byte[1024];
UTF8Encoding temp = new UTF8Encoding(true);
while (fs.Read(b,0,b.Length) > 0)
{
Console.WriteLine(temp.GetString(b));
}
}
}
}
//This code produces output similar to the following;
//results may vary based on the computer/file structure/etc.:
//
//This is to test the OpenWrite method.
//
//
//
//
//
//
//
//
//
//
//
Imports System.IO
Imports System.Text
Public Class Test
Public Shared Sub Main()
Dim path As String = "c:\Temp\MyTest.txt"
Dim fi As FileInfo = New FileInfo(path)
Dim fs As FileStream
' Open the stream for writing.
fs = fi.OpenWrite()
Dim info As Byte() = _
New UTF8Encoding(True).GetBytes("This is to test the OpenWrite method.")
' Add some information to the file.
fs.Write(info, 0, info.Length)
fs.Close()
'Open the stream and read it back.
fs = fi.OpenRead()
Dim b(1023) As Byte
Dim temp As UTF8Encoding = New UTF8Encoding(True)
Do While fs.Read(b, 0, b.Length) > 0
Console.WriteLine(temp.GetString(b))
Loop
fs.Close()
End Sub
End Class
'This code produces output similar to the following;
'results may vary based on the computer/file structure/etc.:
'
'This is to test the OpenWrite method.
'
'
'
'
'
'
'
'
'
'
'
'
Hinweise
Die OpenWrite -Methode öffnet eine Datei, wenn bereits eine für den Dateipfad vorhanden ist, oder erstellt eine neue Datei, falls keine vorhanden ist. Bei einer vorhandenen Datei wird der neue Text nicht an den vorhandenen Text angefügt. Stattdessen werden die vorhandenen Zeichen mit den neuen Zeichen überschrieben. Wenn Sie eine längere Zeichenfolge (z. B. "Dies ist ein Test der OpenWrite-Methode") mit einer kürzeren Zeichenfolge (z. B. "Second run") überschreiben, enthält die Datei eine Mischung aus den Zeichenfolgen ("Zweiter Runtest der OpenWrite-Methode").