Teilen über


File.WriteAllText Methode

Definition

Erstellt eine neue Datei, schreibt den Inhalt in die Datei und schließt dann die Datei. Wenn die Zieldatei bereits vorhanden ist, wird sie abgeschnitten und überschrieben.

Überlädt

WriteAllText(String, ReadOnlySpan<Char>)

Erstellt eine neue Datei, schreibt die angegebene Zeichenfolge in die Datei und schließt dann die Datei.

Wenn die Zieldatei bereits vorhanden ist, wird sie abgeschnitten und überschrieben.

WriteAllText(String, String)

Erstellt eine neue Datei, schreibt die angegebene Zeichenfolge in die Datei und schließt dann die Datei. Wenn die Zieldatei bereits vorhanden ist, wird sie abgeschnitten und überschrieben.

WriteAllText(String, ReadOnlySpan<Char>, Encoding)

Erstellt eine neue Datei, schreibt die angegebene Zeichenfolge mithilfe der angegebenen Codierung in die Datei und schließt dann die Datei.

Wenn die Zieldatei bereits vorhanden ist, wird sie abgeschnitten und überschrieben.

WriteAllText(String, String, Encoding)

Erstellt eine neue Datei, schreibt die angegebene Zeichenfolge mithilfe der angegebenen Codierung in die Datei und schließt dann die Datei. Wenn die Zieldatei bereits vorhanden ist, wird sie abgeschnitten und überschrieben.

WriteAllText(String, ReadOnlySpan<Char>)

Erstellt eine neue Datei, schreibt die angegebene Zeichenfolge in die Datei und schließt dann die Datei.

Wenn die Zieldatei bereits vorhanden ist, wird sie abgeschnitten und überschrieben.

public:
 static void WriteAllText(System::String ^ path, ReadOnlySpan<char> contents);
public static void WriteAllText (string path, ReadOnlySpan<char> contents);
static member WriteAllText : string * ReadOnlySpan<char> -> unit
Public Shared Sub WriteAllText (path As String, contents As ReadOnlySpan(Of Char))

Parameter

path
String

Die Datei, in die geschrieben werden soll.

contents
ReadOnlySpan<Char>

Die Zeichen, die in die Datei geschrieben werden sollen.

Ausnahmen

path ist null.

path ist leer.

Der angegebene Pfad, der Dateiname oder beide überschreiten die vom System definierte maximale Länge.

Der angegebene Pfad ist ungültig (z. B. auf einem nicht zugeordneten Laufwerk).

Beim Öffnen der Datei ist ein E/A-Fehler aufgetreten.

path eine Datei angegeben, die schreibgeschützt ist.

-oder-

path eine ausgeblendete Datei angegeben.

-oder-

path ein Verzeichnis angegeben.

-oder-

Dieser Vorgang wird auf der aktuellen Plattform nicht unterstützt.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

path weist ein ungültiges Format auf.

Hinweise

Diese Methode verwendet UTF-8-Codierung ohne Byte-Order Mark (BOM), sodass die Verwendung der GetPreamble()-Methode ein leeres Bytearray zurückgibt. Wenn ein UTF-8-Bezeichner, z. B. ein Bytereihenfolgezeichen, am Anfang einer Datei eingeschlossen werden muss, verwenden Sie die WriteAllText(String, ReadOnlySpan<Char>, Encoding)-Methode.

Gilt für:

WriteAllText(String, String)

Quelle:
File.cs
Quelle:
File.cs
Quelle:
File.cs

Erstellt eine neue Datei, schreibt die angegebene Zeichenfolge in die Datei und schließt dann die Datei. Wenn die Zieldatei bereits vorhanden ist, wird sie abgeschnitten und überschrieben.

public:
 static void WriteAllText(System::String ^ path, System::String ^ contents);
public static void WriteAllText (string path, string contents);
public static void WriteAllText (string path, string? contents);
static member WriteAllText : string * string -> unit
Public Shared Sub WriteAllText (path As String, contents As String)

Parameter

path
String

Die Datei, in die geschrieben werden soll.

contents
String

Die Zeichenfolge, die in die Datei geschrieben werden soll.

Ausnahmen

.NET Framework- und .NET Core-Versionen, die älter als 2.1 sind: path ist eine leere Zeichenfolge, enthält nur Leerzeichen oder enthält mindestens ein ungültiges Zeichen. Sie können ungültige Zeichen mithilfe der GetInvalidPathChars()-Methode abfragen.

path ist null.

Der angegebene Pfad, der Dateiname oder beide überschreiten die vom System definierte maximale Länge.

Der angegebene Pfad ist ungültig (z. B. auf einem nicht zugeordneten Laufwerk).

Beim Öffnen der Datei ist ein E/A-Fehler aufgetreten.

path eine Datei angegeben, die schreibgeschützt ist.

-oder-

path eine ausgeblendete Datei angegeben.

-oder-

Dieser Vorgang wird auf der aktuellen Plattform nicht unterstützt.

-oder-

path ein Verzeichnis angegeben.

-oder-

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

path weist ein ungültiges Format auf.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

Beispiele

Im folgenden Codebeispiel wird die Verwendung der WriteAllText-Methode zum Schreiben von Text in eine Datei veranschaulicht. In diesem Beispiel wird eine Datei erstellt, sofern sie noch nicht vorhanden ist, und ihr Text hinzugefügt.

using System;
using System.IO;
using System.Text;

class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        // This text is added only once to the file.
        if (!File.Exists(path))
        {
            // Create a file to write to.
            string createText = "Hello and Welcome" + Environment.NewLine;
            File.WriteAllText(path, createText);
        }

        // This text is always added, making the file longer over time
        // if it is not deleted.
        string appendText = "This is extra text" + Environment.NewLine;
        File.AppendAllText(path, appendText);

        // Open the file to read from.
        string readText = File.ReadAllText(path);
        Console.WriteLine(readText);
    }
}
open System
open System.IO

let path = @"c:\temp\MyTest.txt"

// This text is added only once to the file.
if File.Exists path |> not then
    // Create a file to write to.
    let createText =
        "Hello and Welcome" + Environment.NewLine

    File.WriteAllText(path, createText)

// This text is always added, making the file longer over time
// if it is not deleted.
let appendText =
    "This is extra text" + Environment.NewLine

File.AppendAllText(path, appendText)

// Open the file to read from.
let readText = File.ReadAllText path
printfn $"{readText}"
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"

        ' This text is added only once to the file.
        If File.Exists(path) = False Then

            ' Create a file to write to.
            Dim createText As String = "Hello and Welcome" + Environment.NewLine
            File.WriteAllText(path, createText)
        End If

        ' This text is always added, making the file longer over time
        ' if it is not deleted.
        Dim appendText As String = "This is extra text" + Environment.NewLine
        File.AppendAllText(path, appendText)

        ' Open the file to read from.
        Dim readText As String = File.ReadAllText(path)
        Console.WriteLine(readText)
    End Sub
End Class

Hinweise

Diese Methode verwendet UTF-8-Codierung ohne Byte-Order Mark (BOM), sodass die Verwendung der GetPreamble-Methode ein leeres Bytearray zurückgibt. Wenn ein UTF-8-Bezeichner, z. B. ein Bytereihenfolgezeichen, am Anfang einer Datei eingeschlossen werden muss, verwenden Sie die WriteAllText(String, String, Encoding) Methodenüberladung mit UTF8 Codierung.

Angesichts einer Zeichenfolge und eines Dateipfads öffnet diese Methode die angegebene Datei, schreibt die Zeichenfolge in die Datei und schließt dann die Datei.

Gilt für:

WriteAllText(String, ReadOnlySpan<Char>, Encoding)

Erstellt eine neue Datei, schreibt die angegebene Zeichenfolge mithilfe der angegebenen Codierung in die Datei und schließt dann die Datei.

Wenn die Zieldatei bereits vorhanden ist, wird sie abgeschnitten und überschrieben.

public:
 static void WriteAllText(System::String ^ path, ReadOnlySpan<char> contents, System::Text::Encoding ^ encoding);
public static void WriteAllText (string path, ReadOnlySpan<char> contents, System.Text.Encoding encoding);
static member WriteAllText : string * ReadOnlySpan<char> * System.Text.Encoding -> unit
Public Shared Sub WriteAllText (path As String, contents As ReadOnlySpan(Of Char), encoding As Encoding)

Parameter

path
String

Die Datei, in die geschrieben werden soll.

contents
ReadOnlySpan<Char>

Die Zeichen, die in die Datei geschrieben werden sollen.

encoding
Encoding

Die Codierung, die auf die Zeichenfolge angewendet werden soll.

Ausnahmen

path oder encoding ist null.

path ist leer.

Der angegebene Pfad, der Dateiname oder beide überschreiten die vom System definierte maximale Länge.

Der angegebene Pfad ist ungültig (z. B. auf einem nicht zugeordneten Laufwerk).

Beim Öffnen der Datei ist ein E/A-Fehler aufgetreten.

path eine Datei angegeben, die schreibgeschützt ist.

-oder-

path eine ausgeblendete Datei angegeben.

-oder-

path ein Verzeichnis angegeben.

-oder-

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

-oder-

Dieser Vorgang wird auf der aktuellen Plattform nicht unterstützt.

path weist ein ungültiges Format auf.

Gilt für:

WriteAllText(String, String, Encoding)

Quelle:
File.cs
Quelle:
File.cs
Quelle:
File.cs

Erstellt eine neue Datei, schreibt die angegebene Zeichenfolge mithilfe der angegebenen Codierung in die Datei und schließt dann die Datei. Wenn die Zieldatei bereits vorhanden ist, wird sie abgeschnitten und überschrieben.

public:
 static void WriteAllText(System::String ^ path, System::String ^ contents, System::Text::Encoding ^ encoding);
public static void WriteAllText (string path, string contents, System.Text.Encoding encoding);
public static void WriteAllText (string path, string? contents, System.Text.Encoding encoding);
static member WriteAllText : string * string * System.Text.Encoding -> unit
Public Shared Sub WriteAllText (path As String, contents As String, encoding As Encoding)

Parameter

path
String

Die Datei, in die geschrieben werden soll.

contents
String

Die Zeichenfolge, die in die Datei geschrieben werden soll.

encoding
Encoding

Die Codierung, die auf die Zeichenfolge angewendet werden soll.

Ausnahmen

.NET Framework- und .NET Core-Versionen, die älter als 2.1 sind: path ist eine leere Zeichenfolge, enthält nur Leerzeichen oder enthält mindestens ein ungültiges Zeichen. Sie können ungültige Zeichen mithilfe der GetInvalidPathChars()-Methode abfragen.

path ist null.

Der angegebene Pfad, der Dateiname oder beide überschreiten die vom System definierte maximale Länge.

Der angegebene Pfad ist ungültig (z. B. auf einem nicht zugeordneten Laufwerk).

Beim Öffnen der Datei ist ein E/A-Fehler aufgetreten.

path eine Datei angegeben, die schreibgeschützt ist.

-oder-

path eine ausgeblendete Datei angegeben.

-oder-

Dieser Vorgang wird auf der aktuellen Plattform nicht unterstützt.

-oder-

path ein Verzeichnis angegeben.

-oder-

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

path weist ein ungültiges Format auf.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

Beispiele

Im folgenden Codebeispiel wird die Verwendung der WriteAllText-Methode zum Schreiben von Text in eine Datei veranschaulicht. In diesem Beispiel wird eine Datei erstellt, sofern sie noch nicht vorhanden ist, und ihr Text hinzugefügt.

using System;
using System.IO;
using System.Text;

class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        // This text is added only once to the file.
        if (!File.Exists(path))
        {
            // Create a file to write to.
            string createText = "Hello and Welcome" + Environment.NewLine;
            File.WriteAllText(path, createText, Encoding.UTF8);
        }

        // This text is always added, making the file longer over time
        // if it is not deleted.
        string appendText = "This is extra text" + Environment.NewLine;
        File.AppendAllText(path, appendText, Encoding.UTF8);

        // Open the file to read from.
        string readText = File.ReadAllText(path);
        Console.WriteLine(readText);
    }
}
open System
open System.IO
open System.Text

let path = @"c:\temp\MyTest.txt"

// This text is added only once to the file.
if File.Exists path |> not then
    // Create a file to write to.
    let createText =
        "Hello and Welcome" + Environment.NewLine

    File.WriteAllText(path, createText, Encoding.UTF8)

// This text is always added, making the file longer over time
// if it is not deleted.
let appendText =
    "This is extra text" + Environment.NewLine

File.AppendAllText(path, appendText, Encoding.UTF8)

// Open the file to read from.
let readText = File.ReadAllText path
printfn $"{readText}"
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"
        Dim sw As StreamWriter

        ' This text is added only once to the file.
        If File.Exists(path) = False Then

            ' Create a file to write to.
            Dim createText As String = "Hello and Welcome" + Environment.NewLine
            File.WriteAllText(path, createText, Encoding.UTF8)
        End If

        ' This text is always added, making the file longer over time
        ' if it is not deleted.
        Dim appendText As String = "This is extra text" + Environment.NewLine
        File.AppendAllText(path, appendText, Encoding.UTF8)

        ' Open the file to read from.
        Dim readText As String = File.ReadAllText(path)
        Console.WriteLine(readText)
    End Sub
End Class

Hinweise

Angesichts einer Zeichenfolge und eines Dateipfads öffnet diese Methode die angegebene Datei, schreibt die Zeichenfolge mithilfe der angegebenen Codierung in die Datei und schließt dann die Datei. Das Dateihandle wird durch diese Methode garantiert geschlossen, auch wenn Ausnahmen ausgelöst werden.

Gilt für: