Поделиться через


File.AppendAllText Метод

Определение

Добавляет указанную строку в файл, создавая файл, если он еще не существует.

Перегрузки

AppendAllText(String, ReadOnlySpan<Char>)

Добавляет указанную строку в файл, создавая файл, если он еще не существует.

AppendAllText(String, String)

Открывает файл, добавляет указанную строку в файл, а затем закрывает файл. Если файл не существует, этот метод создает файл, записывает указанную строку в файл, а затем закрывает файл.

AppendAllText(String, ReadOnlySpan<Char>, Encoding)

Добавляет указанную строку в файл, создавая файл, если он еще не существует.

AppendAllText(String, String, Encoding)

Добавляет указанную строку в файл с помощью указанной кодировки, создавая файл, если он еще не существует.

AppendAllText(String, ReadOnlySpan<Char>)

Добавляет указанную строку в файл, создавая файл, если он еще не существует.

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

Параметры

path
String

Файл, к который нужно добавить.

contents
ReadOnlySpan<Char>

Символы, записываемые в файл.

Исключения

path пуст.

Указанный путь, имя файла или оба превышают определенную системой максимальную длину.

Указанный путь недопустим (например, он находится на несопоставленном диске).

При открытии файла произошла ошибка ввода-вывода.

path указали файл, доступный только для чтения.

-или-

path указать скрытый файл.

-или-

path указан каталог.

-или-

Вызывающий объект не имеет требуемого разрешения.

-или-

Эта операция не поддерживается на текущей платформе.

path имеет недопустимый формат.

Комментарии

Учитывая строку и путь к файлу, этот метод открывает указанный файл, добавляет строку в конец файла с помощью указанной кодировки.

а затем закрывает файл. Дескриптор файла гарантированно закрывается этим методом, даже если возникают исключения. Метод создает файл

Если он не существует, но он не создает новые каталоги. Поэтому значение параметра пути должно содержать существующие каталоги.

Применяется к

AppendAllText(String, String)

Исходный код:
File.cs
Исходный код:
File.cs
Исходный код:
File.cs

Открывает файл, добавляет указанную строку в файл, а затем закрывает файл. Если файл не существует, этот метод создает файл, записывает указанную строку в файл, а затем закрывает файл.

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

Параметры

path
String

Файл, к который нужно добавить указанную строку.

contents
String

Строка, добавляемая в файл.

Исключения

Версии .NET Framework и .NET Core старше 2.1: path представляет собой строку нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().

Указанный путь, имя файла или оба превышают определенную системой максимальную длину.

Указанный путь недопустим (например, каталог не существует или находится на неисправном диске).

При открытии файла произошла ошибка ввода-вывода.

path указали файл, доступный только для чтения.

-или-

Эта операция не поддерживается на текущей платформе.

-или-

path указан каталог.

-или-

Вызывающий объект не имеет требуемого разрешения.

path имеет недопустимый формат.

Вызывающий объект не имеет требуемого разрешения.

Примеры

В следующем примере кода показано использование метода AppendAllText для добавления дополнительного текста в конец файла. В этом примере файл создается, если он еще не существует, и в него добавляется текст. Однако для успешного выполнения примера каталог с именем temp на диске C должен существовать.

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

Комментарии

Если строка и путь к файлу, этот метод открывает указанный файл, добавляет строку в конец файла, а затем закрывает файл. Дескриптор файла гарантированно закрывается этим методом, даже если возникают исключения.

Метод создает файл, если он не существует, но он не создает новые каталоги. Поэтому значение параметра path должно содержать существующие каталоги.

Применяется к

AppendAllText(String, ReadOnlySpan<Char>, Encoding)

Добавляет указанную строку в файл, создавая файл, если он еще не существует.

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

Параметры

path
String

Файл, к который нужно добавить.

contents
ReadOnlySpan<Char>

Символы, записываемые в файл.

encoding
Encoding

Кодировка, применяемая к строке.

Исключения

path или encodingnull.

path пуст.

Указанный путь, имя файла или оба превышают определенную системой максимальную длину.

Указанный путь недопустим (например, он находится на несопоставленном диске).

При открытии файла произошла ошибка ввода-вывода.

path указали файл, доступный только для чтения.

-или-

path указать скрытый файл.

-или-

path указан каталог.

-или-

Вызывающий объект не имеет требуемого разрешения.

-или-

Эта операция не поддерживается на текущей платформе.

path имеет недопустимый формат.

Комментарии

Учитывая строку и путь к файлу, этот метод открывает указанный файл, добавляет строку в конец файла с помощью указанной кодировки.

а затем закрывает файл. Дескриптор файла гарантированно закрывается этим методом, даже если возникают исключения. Метод создает файл

Если он не существует, но он не создает новые каталоги. Поэтому значение параметра пути должно содержать существующие каталоги.

Применяется к

AppendAllText(String, String, Encoding)

Исходный код:
File.cs
Исходный код:
File.cs
Исходный код:
File.cs

Добавляет указанную строку в файл с помощью указанной кодировки, создавая файл, если он еще не существует.

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

Параметры

path
String

Файл, к который нужно добавить указанную строку.

contents
String

Строка, добавляемая в файл.

encoding
Encoding

Кодировка символов, используемая.

Исключения

Версии .NET Framework и .NET Core старше 2.1: path представляет собой строку нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().

Указанный путь, имя файла или оба превышают определенную системой максимальную длину.

Указанный путь недопустим (например, каталог не существует или находится на неисправном диске).

При открытии файла произошла ошибка ввода-вывода.

path указали файл, доступный только для чтения.

-или-

Эта операция не поддерживается на текущей платформе.

-или-

path указан каталог.

-или-

Вызывающий объект не имеет требуемого разрешения.

path имеет недопустимый формат.

Вызывающий объект не имеет требуемого разрешения.

Примеры

В следующем примере кода показано использование метода AppendAllText для добавления дополнительного текста в конец файла. В этом примере файл создается, если он еще не существует, и в него добавляется текст. Однако для успешного выполнения примера каталог с именем temp на диске C должен существовать.

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

Комментарии

Если строка и путь к файлу, этот метод открывает указанный файл, добавляет строку в конец файла с помощью указанной кодировки, а затем закрывает файл. Дескриптор файла гарантированно закрывается этим методом, даже если возникают исключения.

Метод создает файл, если он не существует, но он не создает новые каталоги. Поэтому значение параметра path должно содержать существующие каталоги.

Применяется к