Freigeben über


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

ArgumentNullException

stream oder encoding ist NULL (Nothing in Visual Basic).

ArgumentException

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.

Gewusst wie: Schreiben von Text in eine Datei

In eine Textdatei schreiben.

Gewusst wie: Schreiben von Text in eine Datei

Aus einer Textdatei lesen.

Gewusst wie: Lesen aus einer Textdatei

Text an eine Datei anfügen.

Gewusst wie: Öffnen und Anfügen an eine Protokolldatei

File.AppendText

FileInfo.AppendText

Die Größe einer Datei abrufen.

FileInfo.Length

Die Attribute einer Datei abrufen.

File.GetAttributes

Die Attribute einer Datei festlegen.

File.SetAttributes

Bestimmen, ob eine Datei vorhanden ist.

File.Exists

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