Sdílet prostřednictvím


StreamWriter.WriteAsync Metoda

Definice

Asynchronně zapisuje data do datového proudu.

Přetížení

WriteAsync(Char)

Asynchronně zapíše znak do datového proudu.

WriteAsync(String)

Asynchronně zapíše řetězec do datového proudu.

WriteAsync(ReadOnlyMemory<Char>, CancellationToken)

Asynchronně zapíše oblast paměti znaků do datového proudu.

WriteAsync(Char[], Int32, Int32)

Asynchronně zapíše do datového proudu podadresu znaků.

WriteAsync(Char)

Zdroj:
StreamWriter.cs
Zdroj:
StreamWriter.cs
Zdroj:
StreamWriter.cs

Asynchronně zapíše znak do datového proudu.

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

Parametry

value
Char

Znak, který se má zapisovat do datového proudu.

Návraty

Úloha, která představuje asynchronní operaci zápisu.

Atributy

Výjimky

Zapisovač streamu je odstraněn.

Zapisovač datových proudů je aktuálně používán předchozí operací zápisu.

Příklady

Následující příklad ukazuje, jak zapisovat jeden znak (písmeno "a") do textového souboru pomocí WriteAsync(Char) metody .

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

Poznámky

Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem Write(Char).

Platí pro

WriteAsync(String)

Zdroj:
StreamWriter.cs
Zdroj:
StreamWriter.cs
Zdroj:
StreamWriter.cs

Asynchronně zapíše řetězec do datového proudu.

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

Parametry

value
String

Řetězec pro zápis do datového proudu. Pokud value je null, nic se nepíše.

Návraty

Úloha, která představuje asynchronní operaci zápisu.

Atributy

Výjimky

Zapisovač streamu je odstraněn.

Zapisovač datových proudů je aktuálně používán předchozí operací zápisu.

Příklady

Následující příklad ukazuje, jak zapsat řetězec do textového souboru pomocí WriteAsync(String) metody .

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

Poznámky

Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem Write(String).

Platí pro

WriteAsync(ReadOnlyMemory<Char>, CancellationToken)

Zdroj:
StreamWriter.cs
Zdroj:
StreamWriter.cs
Zdroj:
StreamWriter.cs

Asynchronně zapíše oblast paměti znaků do datového proudu.

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

Parametry

buffer
ReadOnlyMemory<Char>

Oblast paměti znaků, která se má zapisovat do datového proudu.

cancellationToken
CancellationToken

Token, který se má monitorovat pro žádosti o zrušení. Výchozí hodnota je None.

Návraty

Úloha, která představuje asynchronní operaci zápisu.

Výjimky

Token zrušení byl zrušen. Tato výjimka je uložena ve vrácené úloze.

Platí pro

WriteAsync(Char[], Int32, Int32)

Zdroj:
StreamWriter.cs
Zdroj:
StreamWriter.cs
Zdroj:
StreamWriter.cs

Asynchronně zapíše do datového proudu podadresu znaků.

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

Parametry

buffer
Char[]

Pole znaků, které obsahuje data k zápisu.

index
Int32

Pozice znaku ve vyrovnávací paměti, ve které se mají začít číst data.

count
Int32

Maximální počet znaků, které se mají napsat.

Návraty

Úloha, která představuje asynchronní operaci zápisu.

Atributy

Výjimky

buffer je null.

count Plus index je větší než délka vyrovnávací paměti.

index nebo count je negativní.

Zapisovač streamu je odstraněn.

Zapisovač datových proudů je aktuálně používán předchozí operací zápisu.

Příklady

Následující příklad ukazuje, jak zapisovat více znaků do textového souboru pomocí WriteAsync(Char[], Int32, Int32) metody .

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

Poznámky

Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem Write(Char[], Int32, Int32).

Platí pro