StreamWriter-Konstruktor (Stream, Encoding)
Initialisiert eine neue Instanz der StreamWriter-Klasse für den angegebenen Stream mit der angegebenen Codierung und der Standardpuffergröße.
Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Sub New ( _
stream As Stream, _
encoding As Encoding _
)
'Usage
Dim stream As Stream
Dim encoding As Encoding
Dim instance As New StreamWriter(stream, encoding)
public StreamWriter (
Stream stream,
Encoding encoding
)
public:
StreamWriter (
Stream^ stream,
Encoding^ encoding
)
public StreamWriter (
Stream stream,
Encoding encoding
)
public function StreamWriter (
stream : Stream,
encoding : Encoding
)
Parameter
- stream
Der Stream, in den geschrieben werden soll.
- encoding
Die zu verwendende Zeichencodierung.
Ausnahmen
Ausnahmetyp | Bedingung |
---|---|
stream oder encoding ist NULL (Nothing in Visual Basic). |
|
stream ist schreibgeschützt. |
Hinweise
Dieser Konstruktor initialisiert die Encoding-Eigenschaft mithilfe des Codierungsparameters und die BaseStream-Eigenschaft mithilfe des Streamparameters. Weitere Informationen finden Sie unter Encoding.
Wenn Sie einen anderen Wert als Encoding.Default angeben, wird die Bytereihenfolgemarkierung (BOM, Byte Order Mark) in die Datei geschrieben.
Warnung
Wenn Sie einen Zeichensatz mit einer bestimmten Kultureinstellung kompilieren und die gleichen Zeichen mit einer anderen Kultureinstellung abrufen, können diese möglicherweise nicht interpretiert werden, und es wird eine Ausnahme ausgelöst.
Ein Beispiel für die Verwendung dieser Methode finden Sie im Beispielabschnitt weiter unten. In der folgenden Tabelle sind Beispiele für andere typische oder verwandte E/A-Aufgaben aufgeführt.
Aufgabe |
Beispiel in diesem Thema |
---|---|
Eine Textdatei erstellen. |
|
In eine Textdatei schreiben. |
|
Aus einer Textdatei lesen. |
|
Text an eine Datei anfügen. |
|
Die Größe einer Datei abrufen. |
|
Die Attribute einer Datei abrufen. |
|
Die Attribute einer Datei festlegen. |
|
Bestimmen, ob eine Datei vorhanden ist. |
|
Aus einer Binärdatei lesen. |
Gewusst wie: Lesen und Schreiben einer neu erstellten Datendatei |
In eine Binärdatei schreiben. |
Gewusst wie: Lesen und Schreiben einer neu erstellten Datendatei |
Beispiel
Das folgende Beispiel veranschaulicht die StreamWriter-Konstruktoren.
Public Sub CreateTextFile(ByVal FileName As String, _
ByVal TextToAdd As String)
Dim Fs As FileStream = New FileStream(FileName, _
FileMode.CreateNew, FileAccess.Write, FileShare.None)
Dim SwFromFile As StreamWriter = New StreamWriter(FileName)
SwFromFile.Write(TextToAdd)
SwFromFile.Flush()
SwFromFile.Close()
Dim SwFromFileStream As StreamWriter = New StreamWriter(Fs)
SwFromFileStream.Write(TextToAdd)
SwFromFileStream.Flush()
SwFromFileStream.Close()
Dim SwFromFileStreamDefaultEnc As StreamWriter = _
New StreamWriter(Fs, System.Text.Encoding.Default)
SwFromFileStreamDefaultEnc.Write(TextToAdd)
SwFromFileStreamDefaultEnc.Flush()
SwFromFileStreamDefaultEnc.Close()
Dim SwFromFileTrue As StreamWriter = _
New StreamWriter(FileName, True)
SwFromFileTrue.Write(TextToAdd)
SwFromFileTrue.Flush()
SwFromFileTrue.Close()
Dim SwFromFileTrueUTF8Buffer = _
New StreamWriter(FileName, _
True, System.Text.Encoding.UTF8, 512)
SwFromFileTrueUTF8Buffer.Write(TextToAdd)
SwFromFileTrueUTF8Buffer.Flush()
SwFromFileTrueUTF8Buffer.Close()
Dim SwFromFileTrueUTF8 = _
New StreamWriter(FileName, True, _
System.Text.Encoding.UTF8)
SwFromFileTrueUTF8.Write(TextToAdd)
SwFromFileTrueUTF8.Flush()
SwFromFileTrueUTF8.Close()
Dim SwFromFileStreamUTF8Buffer = _
New StreamWriter(Fs, System.Text.Encoding.UTF8, 512)
SwFromFileStreamUTF8Buffer.Write(textToAdd)
SwFromFileStreamUTF8Buffer.Flush()
SwFromFileStreamUTF8Buffer.Close()
End Sub
public void CreateTextFile(string fileName, string textToAdd)
{
string logFile = DateTime.Now.ToShortDateString()
.Replace(@"/",@"-").Replace(@"\",@"-") + ".log";
FileStream fs = new FileStream(fileName,
FileMode.CreateNew, FileAccess.Write, FileShare.None);
StreamWriter swFromFile = new StreamWriter(logFile);
swFromFile.Write(textToAdd);
swFromFile.Flush();
swFromFile.Close();
StreamWriter swFromFileStream = new StreamWriter(fs);
swFromFileStream.Write(textToAdd);
swFromFileStream.Flush();
swFromFileStream.Close();
StreamWriter swFromFileStreamDefaultEnc =
new System.IO.StreamWriter(fs,
System.Text.Encoding.Default);
swFromFileStreamDefaultEnc.Write(textToAdd);
swFromFileStreamDefaultEnc.Flush();
swFromFileStreamDefaultEnc.Close();
StreamWriter swFromFileTrue =
new StreamWriter(fileName,true);
swFromFileTrue.Write(textToAdd);
swFromFileTrue.Flush();
swFromFileTrue.Close();
StreamWriter swFromFileTrueUTF8Buffer =
new StreamWriter(fileName,
true, System.Text.Encoding.UTF8,512);
swFromFileTrueUTF8Buffer.Write(textToAdd);
swFromFileTrueUTF8Buffer.Flush();
swFromFileTrueUTF8Buffer.Close();
StreamWriter swFromFileTrueUTF8 =
new StreamWriter(fileName, true,
System.Text.Encoding.UTF8);
swFromFileTrueUTF8.Write(textToAdd);
swFromFileTrueUTF8.Flush();
swFromFileTrueUTF8.Close();
StreamWriter swFromFileStreamUTF8Buffer =
new StreamWriter(fs, System.Text.Encoding.UTF8, 512);
swFromFileStreamUTF8Buffer.Write(textToAdd);
swFromFileStreamUTF8Buffer.Flush();
swFromFileStreamUTF8Buffer.Close();
}
void CreateTextFile( String^ fileName, String^ textToAdd )
{
String^ logFile = String::Concat( DateTime::Now.ToShortDateString()
->Replace( "/", "-" )->Replace( "\\", "-" ), ".log" );
FileStream^ fs = gcnew FileStream( fileName,
FileMode::CreateNew, FileAccess::Write, FileShare::None );
StreamWriter^ swFromFile = gcnew StreamWriter( logFile );
swFromFile->Write( textToAdd );
swFromFile->Flush();
swFromFile->Close();
StreamWriter^ swFromFileStream = gcnew StreamWriter( fs );
swFromFileStream->Write( textToAdd );
swFromFileStream->Flush();
swFromFileStream->Close();
StreamWriter^ swFromFileStreamDefaultEnc =
gcnew System::IO::StreamWriter( fs,
System::Text::Encoding::Default );
swFromFileStreamDefaultEnc->Write( textToAdd );
swFromFileStreamDefaultEnc->Flush();
swFromFileStreamDefaultEnc->Close();
StreamWriter^ swFromFileTrue =
gcnew StreamWriter( fileName,true );
swFromFileTrue->Write( textToAdd );
swFromFileTrue->Flush();
swFromFileTrue->Close();
StreamWriter^ swFromFileTrueUTF8Buffer =
gcnew StreamWriter( fileName,
true, System::Text::Encoding::UTF8, 512 );
swFromFileTrueUTF8Buffer->Write( textToAdd );
swFromFileTrueUTF8Buffer->Flush();
swFromFileTrueUTF8Buffer->Close();
StreamWriter^ swFromFileTrueUTF8 =
gcnew StreamWriter( fileName, true,
System::Text::Encoding::UTF8 );
swFromFileTrueUTF8->Write( textToAdd );
swFromFileTrueUTF8->Flush();
swFromFileTrueUTF8->Close();
StreamWriter^ swFromFileStreamUTF8Buffer =
gcnew StreamWriter( fs, System::Text::Encoding::UTF8, 512 );
swFromFileStreamUTF8Buffer->Write( textToAdd );
swFromFileStreamUTF8Buffer->Flush();
swFromFileStreamUTF8Buffer->Close();
}
public void CreateTextFile(String fileName, String textToAdd)
{
String logFile = DateTime.get_Now().ToShortDateString().
Replace("/", "-").Replace("\\", "-") + ".log";
FileStream fs = new FileStream(fileName, FileMode.CreateNew,
FileAccess.Write, FileShare.None);
StreamWriter swFromFile = new StreamWriter(logFile);
swFromFile.Write(textToAdd);
swFromFile.Flush();
swFromFile.Close();
StreamWriter swFromFileStream = new StreamWriter(fs);
swFromFileStream.Write(textToAdd);
swFromFileStream.Flush();
swFromFileStream.Close();
StreamWriter swFromFileStreamDefaultEnc =
new System.IO.StreamWriter(fs,System.Text.Encoding.get_Default());
swFromFileStreamDefaultEnc.Write(textToAdd);
swFromFileStreamDefaultEnc.Flush();
swFromFileStreamDefaultEnc.Close();
StreamWriter swFromFileTrue = new StreamWriter(fileName, true);
swFromFileTrue.Write(textToAdd);
swFromFileTrue.Flush();
swFromFileTrue.Close();
StreamWriter swFromFileTrueUTF8Buffer = new StreamWriter(fileName,
true, System.Text.Encoding.get_UTF8(), 512);
swFromFileTrueUTF8Buffer.Write(textToAdd);
swFromFileTrueUTF8Buffer.Flush();
swFromFileTrueUTF8Buffer.Close();
StreamWriter swFromFileTrueUTF8 = new StreamWriter(fileName,
true, System.Text.Encoding.get_UTF8());
swFromFileTrueUTF8.Write(textToAdd);
swFromFileTrueUTF8.Flush();
swFromFileTrueUTF8.Close();
StreamWriter swFromFileStreamUTF8Buffer = new StreamWriter(fs,
System.Text.Encoding.get_UTF8(), 512);
swFromFileStreamUTF8Buffer.Write(textToAdd);
swFromFileStreamUTF8Buffer.Flush();
swFromFileStreamUTF8Buffer.Close();
} //CreateTextFile
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
.NET Compact Framework
Unterstützt in: 2.0, 1.0
Siehe auch
Referenz
StreamWriter-Klasse
StreamWriter-Member
System.IO-Namespace
Encoding
Weitere Ressourcen
Datei- und Stream-E/A
Gewusst wie: Lesen aus einer Textdatei
Gewusst wie: Schreiben von Text in eine Datei