Informationen
Das angeforderte Thema wird unten angezeigt. Es ist jedoch nicht in dieser Bibliothek vorhanden.

Gewusst wie: Schreiben in eine Textdatei (C#-Programmierhandbuch)

In diesen Beispielen werden verschiedene Möglichkeiten veranschaulicht, Text in eine Datei zu schreiben. In den ersten beiden Beispielen werden statische Methoden für die System.IO.File-Klasse verwendet, um entweder ein vollständiges Zeichenfolgenarray oder eine vollständige Zeichenfolge in eine Textdatei zu schreiben. In Beispiel 3 wird dargestellt, wie Text einer Datei hinzugefügt wird, wenn jede Zeile vor dem Schreiben in die Datei einzeln verarbeitet werden muss. In den Beispielen 1 – 3 wird der gesamte vorhandene Inhalt in der Datei überschrieben. In Beispiel 4 wird veranschaulicht, wie einer vorhandenen Datei Text angefügt wird.


class WriteTextFile
{
    static void Main()
    {

        // These examples assume a "C:\Users\Public\TestFolder" folder on your machine.
        // You can modify the path if necessary.

        // Example #1: Write an array of strings to a file.
        // Create a string array that consists of three lines.
        string[] lines = { "First line", "Second line", "Third line" };
        // WriteAllLines creates a file, writes a collection of strings to the file,
        // and then closes the file.
        System.IO.File.WriteAllLines(@"C:\Users\Public\TestFolder\WriteLines.txt", lines);


        // Example #2: Write one string to a text file.
        string text = "A class is the most powerful data type in C#. Like a structure, " +
                       "a class defines the data and behavior of the data type. ";
        // WriteAllText creates a file, writes the specified string to the file,
        // and then closes the file.
        System.IO.File.WriteAllText(@"C:\Users\Public\TestFolder\WriteText.txt", text);

        // Example #3: Write only some strings in an array to a file.
        // The using statement automatically closes the stream and calls 
        // IDisposable.Dispose on the stream object.
        using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\Users\Public\TestFolder\WriteLines2.txt"))
        {
            foreach (string line in lines)
            {
                // If the line doesn't contain the word 'Second', write the line to the file.
                if (!line.Contains("Second"))
                {
                    file.WriteLine(line);
                }
            }
        }

        // Example #4: Append new text to an existing file.
        // The using statement automatically closes the stream and calls 
        // IDisposable.Dispose on the stream object.
        using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\Users\Public\TestFolder\WriteLines2.txt", true))
        {
            file.WriteLine("Fourth line");
        }
    }
}
 //Output (to WriteLines.txt):
 //   First line
 //   Second line
 //   Third line

 //Output (to WriteText.txt):
 //   A class is the most powerful data type in C#. Like a structure, a class defines the data and behavior of the data type.

 //Output to WriteLines2.txt after Example #3:
 //   First line
 //   Third line

 //Output to WriteLines2.txt after Example #4:
 //   First line
 //   Third line
 //   Fourth line


In allen diesen Beispielen werden Zeichenfolgenliterale in Dateien geschrieben. Sie sollten jedoch eher die Format-Methode verwenden, die viele Steuerelemente enthält, mit denen verschiedene Wertetypen rechts- oder linksbündig mit oder ohne Abstand in ein Feld geschrieben werden können.

Kopieren Sie den Code in eine Konsolenanwendung.

Ersetzen Sie "c:\testdir" durch einen tatsächlichen Ordnernamen auf dem Computer, oder erstellen Sie einen Ordner mit diesem Namen.

Die folgenden Bedingungen können einen Ausnahmefehler verursachen:

  • Die Datei ist bereits vorhanden und ist schreibgeschützt.

  • Der Pfadname ist möglicherweise zu lang.

  • Der Datenträger ist möglicherweise voll.

Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Vielen Dank für Ihr Feedback.

Community-Beiträge

Anzeigen:
© 2014 Microsoft