File.WriteAllText Metoda

Definicja

Tworzy nowy plik, zapisuje zawartość w pliku, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony.

Przeciążenia

WriteAllText(String, String)

Tworzy nowy plik, zapisuje określony ciąg w pliku, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony.

WriteAllText(String, String, Encoding)

Tworzy nowy plik, zapisuje określony ciąg w pliku przy użyciu określonego kodowania, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony.

WriteAllText(String, String)

Źródło:
File.cs
Źródło:
File.cs
Źródło:
File.cs

Tworzy nowy plik, zapisuje określony ciąg w pliku, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony.

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)

Parametry

path
String

Plik do zapisania.

contents
String

Ciąg do zapisania w pliku.

Wyjątki

.NET Framework i .NET Core w wersjach starszych niż 2.1: path jest ciągiem o zerowej długości, zawiera tylko biały znak lub zawiera co najmniej jeden nieprawidłowy znak. Zapytania dotyczące nieprawidłowych znaków można wykonać przy użyciu GetInvalidPathChars() metody .

path to null.

Podana ścieżka, nazwa pliku lub obie przekraczają maksymalną długość zdefiniowaną przez system.

Określona ścieżka jest nieprawidłowa (na przykład znajduje się na niezamapowanym dysku).

Podczas otwierania pliku wystąpił błąd We/Wy.

path określony plik, który jest tylko do odczytu.

-lub-

path określono plik, który jest ukryty.

-lub-

Ta operacja nie jest obsługiwana na bieżącej platformie.

-lub-

path określony katalog.

-lub-

Obiekt wywołujący nie posiada wymaganych uprawnień.

path jest w nieprawidłowym formacie.

Obiekt wywołujący nie posiada wymaganych uprawnień.

Przykłady

W poniższym przykładzie kodu pokazano użycie WriteAllText metody do zapisywania tekstu w pliku. W tym przykładzie zostanie utworzony plik, jeśli jeszcze nie istnieje, a do niego zostanie dodany tekst.

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

Uwagi

Ta metoda używa kodowania UTF-8 bez znaku Byte-Order Mark (BOM), dlatego użycie GetPreamble metody zwróci pustą tablicę bajtów. Jeśli konieczne jest dołączenie identyfikatora UTF-8, takiego jak znacznik kolejności bajtów, na początku pliku, należy użyć WriteAllText(String, String, Encoding) przeciążenia metody z UTF8 kodowaniem.

Biorąc pod uwagę ciąg i ścieżkę pliku, ta metoda otwiera określony plik, zapisuje ciąg w pliku, a następnie zamyka plik.

Dotyczy

WriteAllText(String, String, Encoding)

Źródło:
File.cs
Źródło:
File.cs
Źródło:
File.cs

Tworzy nowy plik, zapisuje określony ciąg w pliku przy użyciu określonego kodowania, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony.

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)

Parametry

path
String

Plik do zapisania.

contents
String

Ciąg do zapisania w pliku.

encoding
Encoding

Kodowanie, które ma być stosowane do ciągu.

Wyjątki

.NET Framework i .NET Core w wersjach starszych niż 2.1: path jest ciągiem o zerowej długości, zawiera tylko biały znak lub zawiera co najmniej jeden nieprawidłowy znak. Zapytania dotyczące nieprawidłowych znaków można wykonać przy użyciu GetInvalidPathChars() metody .

path to null.

Podana ścieżka, nazwa pliku lub obie przekraczają maksymalną długość zdefiniowaną przez system.

Określona ścieżka jest nieprawidłowa (na przykład znajduje się na niezamapowanym dysku).

Podczas otwierania pliku wystąpił błąd We/Wy.

path określony plik, który jest tylko do odczytu.

-lub-

path określono plik, który jest ukryty.

-lub-

Ta operacja nie jest obsługiwana na bieżącej platformie.

-lub-

path określony katalog.

-lub-

Obiekt wywołujący nie posiada wymaganych uprawnień.

path jest w nieprawidłowym formacie.

Obiekt wywołujący nie posiada wymaganych uprawnień.

Przykłady

W poniższym przykładzie kodu pokazano użycie WriteAllText metody do zapisywania tekstu w pliku. W tym przykładzie zostanie utworzony plik, jeśli jeszcze nie istnieje, a do niego zostanie dodany tekst.

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

Uwagi

Na podstawie ciągu i ścieżki pliku ta metoda otwiera określony plik, zapisuje ciąg w pliku przy użyciu określonego kodowania, a następnie zamyka plik. W tej metodzie gwarantowane jest zamknięcie dojścia do pliku, nawet jeśli są zgłaszane wyjątki.

Dotyczy