StreamWriter.WriteAsync Метод

Определение

Асинхронно записывает данные в поток.

Перегрузки

Имя Описание
WriteAsync(Char)

Асинхронно записывает символ в поток.

WriteAsync(String)

Асинхронно записывает строку в поток.

WriteAsync(ReadOnlyMemory<Char>, CancellationToken)

Асинхронно записывает область памяти символов в поток.

WriteAsync(Char[], Int32, Int32)

Асинхронно записывает вложенные символы в поток.

WriteAsync(Char)

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

Асинхронно записывает символ в поток.

public:
 override System::Threading::Tasks::Task ^ WriteAsync(char value);
public override System.Threading.Tasks.Task WriteAsync(char value);
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task WriteAsync(char value);
override this.WriteAsync : char -> System.Threading.Tasks.Task
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.WriteAsync : char -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (value As Char) As Task

Параметры

value
Char

Символ для записи в поток.

Возвращаемое значение

Задача, представляющая асинхронную операцию записи.

Атрибуты

Исключения

Модуль записи потоков удаляется.

Модуль записи потоков в настоящее время используется предыдущей операцией записи.

Примеры

В следующем примере показано, как записать один символ (букву "a") в текстовый файл с помощью WriteAsync(Char) метода.

using System.IO;

namespace ConsoleApplication
{
    class Program1
    {
        static void Main()
        {
            WriteCharacters();
        }

        static async void WriteCharacters()
        {
            using (StreamWriter writer = File.CreateText("newfile.txt"))
            {
                await writer.WriteAsync('a');
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        WriteCharacters()
    End Sub

    Async Sub WriteCharacters()
        Dim oneLetter As Char = "a"
        Using writer As StreamWriter = File.CreateText("newfile.txt")
            Await writer.WriteAsync(oneLetter)
        End Using
    End Sub
End Module

Комментарии

Этот метод сохраняет в задаче все исключения без использования, которые может вызывать синхронный аналог метода. Если исключение хранится в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему выбрасываются синхронно. Сведения о сохраненных исключениях см. в исключениях, создаваемых Write(Char).

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

WriteAsync(String)

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

Асинхронно записывает строку в поток.

public:
 override System::Threading::Tasks::Task ^ WriteAsync(System::String ^ value);
public override System.Threading.Tasks.Task WriteAsync(string value);
public override System.Threading.Tasks.Task WriteAsync(string? value);
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task WriteAsync(string value);
override this.WriteAsync : string -> System.Threading.Tasks.Task
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.WriteAsync : string -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (value As String) As Task

Параметры

value
String

Строка для записи в поток. Если value есть null, ничего не записывается.

Возвращаемое значение

Задача, представляющая асинхронную операцию записи.

Атрибуты

Исключения

Модуль записи потоков удаляется.

Модуль записи потоков в настоящее время используется предыдущей операцией записи.

Примеры

В следующем примере показано, как записать строку в текстовый файл с помощью WriteAsync(String) метода.

using System.IO;

namespace ConsoleApplication
{
    class Program2
    {
        static void Main()
        {
            WriteCharacters();
        }

        static async void WriteCharacters()
        {
            using (StreamWriter writer = File.CreateText("newfile.txt"))
            {
                await writer.WriteAsync("Example text as string");
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        WriteCharacters()
    End Sub

    Async Sub WriteCharacters()

        Using writer As StreamWriter = File.CreateText("newfile.txt")
            Await writer.WriteAsync("Example text as string")
        End Using
    End Sub
End Module

Комментарии

Этот метод сохраняет в задаче все исключения без использования, которые может вызывать синхронный аналог метода. Если исключение хранится в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему выбрасываются синхронно. Сведения о сохраненных исключениях см. в исключениях, создаваемых Write(String).

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

WriteAsync(ReadOnlyMemory<Char>, CancellationToken)

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

Асинхронно записывает область памяти символов в поток.

public override System.Threading.Tasks.Task WriteAsync(ReadOnlyMemory<char> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.WriteAsync : ReadOnlyMemory<char> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (buffer As ReadOnlyMemory(Of Char), Optional cancellationToken As CancellationToken = Nothing) As Task

Параметры

buffer
ReadOnlyMemory<Char>

Область памяти символов для записи в поток.

cancellationToken
CancellationToken

Маркер для отслеживания запросов на отмену. Значение по умолчанию — None.

Возвращаемое значение

Задача, представляющая асинхронную операцию записи.

Исключения

Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.

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

WriteAsync(Char[], Int32, Int32)

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

Асинхронно записывает вложенные символы в поток.

public:
 override System::Threading::Tasks::Task ^ WriteAsync(cli::array <char> ^ buffer, int index, int count);
public override System.Threading.Tasks.Task WriteAsync(char[] buffer, int index, int count);
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task WriteAsync(char[] buffer, int index, int count);
override this.WriteAsync : char[] * int * int -> System.Threading.Tasks.Task
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.WriteAsync : char[] * int * int -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (buffer As Char(), index As Integer, count As Integer) As Task

Параметры

buffer
Char[]

Массив символов, содержащий данные для записи.

index
Int32

Позиция символа в буфере, с которого начинается чтение данных.

count
Int32

Максимальное количество символов для записи.

Возвращаемое значение

Задача, представляющая асинхронную операцию записи.

Атрибуты

Исключения

buffer равно null.

index Плюс count больше длины буфера.

index или count отрицательный.

Модуль записи потоков удаляется.

Модуль записи потоков в настоящее время используется предыдущей операцией записи.

Примеры

В следующем примере показано, как записать несколько символов в текстовый файл с помощью WriteAsync(Char[], Int32, Int32) метода.

using System.IO;
using System.Text;

namespace ConsoleApplication
{
    class Program5
    {
        static void Main()
        {
            WriteCharacters();
        }

        static async void WriteCharacters()
        {
            UnicodeEncoding ue = new UnicodeEncoding();
            char[] charsToAdd = ue.GetChars(ue.GetBytes("Example string"));
            using (StreamWriter writer = File.CreateText("newfile.txt"))
            {
                await writer.WriteAsync(charsToAdd, 0, charsToAdd.Length);
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        WriteCharacters()
    End Sub

    Async Sub WriteCharacters()
        Dim ue As UnicodeEncoding = New UnicodeEncoding()
        Dim charsToAdd() = ue.GetChars(ue.GetBytes("Example string"))

        Using writer As StreamWriter = File.CreateText("newfile.txt")
            Await writer.WriteAsync(charsToAdd, 0, charsToAdd.Length)
        End Using
    End Sub
End Module

Комментарии

Этот метод сохраняет в задаче все исключения без использования, которые может вызывать синхронный аналог метода. Если исключение хранится в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему выбрасываются синхронно. Сведения о сохраненных исключениях см. в исключениях, создаваемых Write(Char[], Int32, Int32).

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