Sdílet prostřednictvím


StringWriter.WriteAsync Metoda

Definice

Zapíše data do řetězce asynchronně.

Přetížení

WriteAsync(Char)

Zapíše znak do řetězce asynchronně.

WriteAsync(String)

Zapíše řetězec do aktuálního řetězce asynchronně.

WriteAsync(ReadOnlyMemory<Char>, CancellationToken)

Asynchronně zapíše do řetězce paměťovou oblast znaků.

WriteAsync(StringBuilder, CancellationToken)

Asynchronně zapíše textovou reprezentaci tvůrce řetězců do řetězce.

WriteAsync(Char[], Int32, Int32)

Zapíše podadresu znaků do řetězce asynchronně.

WriteAsync(Char)

Zdroj:
StringWriter.cs
Zdroj:
StringWriter.cs
Zdroj:
StringWriter.cs

Zapíše znak do řetězce asynchronně.

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 řetězce.

Návraty

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

Atributy

Výjimky

Zapisovač řetězců je odstraněn.

Zapisovač řetězců je aktuálně používán předchozí operací zápisu.

Příklady

Následující příklad ukazuje, jak psát znaky pomocí WriteAsync(Char) metody .

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

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            WriteCharacters();
        }

        static async void WriteCharacters()
        {
            StringBuilder stringToWrite = new StringBuilder("Characters in StringBuilder");
            stringToWrite.AppendLine();

            using (StringWriter writer = new StringWriter(stringToWrite))
            {
                UnicodeEncoding ue = new UnicodeEncoding();
                char[] charsToAdd = ue.GetChars(ue.GetBytes("and chars to add"));
                foreach (char c in charsToAdd)
                {
                    await writer.WriteAsync(c);
                }
                Console.WriteLine(stringToWrite.ToString());
            }
        }
    }
}
// The example displays the following output:
//
// Characters in StringBuilder
// and chars to add
//
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        WriteCharacters()
    End Sub

    Async Sub WriteCharacters()
        Dim stringToWrite As StringBuilder = New StringBuilder("Characters in StringBuilder")
        stringToWrite.AppendLine()

        Using writer As StringWriter = New StringWriter(stringToWrite)

            Dim ue As UnicodeEncoding = New UnicodeEncoding()
            Dim charsToAdd() = ue.GetChars(ue.GetBytes("and chars to add"))
            For Each c As Char In charsToAdd
                Await writer.WriteAsync(c)
            Next
            Console.WriteLine(stringToWrite.ToString())
        End Using
    End Sub
End Module
' The example displays the following output:
'
' Characters in StringBuilder
' and chars to add
'

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:
StringWriter.cs
Zdroj:
StringWriter.cs
Zdroj:
StringWriter.cs

Zapíše řetězec do aktuálního řetězce asynchronně.

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 určený pro zápis Pokud value je null, nic se do textového streamu nepíše.

Návraty

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

Atributy

Výjimky

Zapisovač řetězců je odstraněn.

Zapisovač řetězců je aktuálně používán předchozí operací zápisu.

Příklady

Následující příklad ukazuje, jak napsat řetězec pomocí WriteAsync(String) metody .

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

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            WriteCharacters();
        }

        static async void WriteCharacters()
        {
            StringBuilder stringToWrite = new StringBuilder("Characters in StringBuilder");
            stringToWrite.AppendLine();

            using (StringWriter writer = new StringWriter(stringToWrite))
            {
                await writer.WriteAsync("and add characters through StringWriter");
                Console.WriteLine(stringToWrite.ToString());
            }
        }
    }
}
// The example displays the following output:
//
// Characters in StringBuilder
// and add characters through StringWriter
//
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        WriteCharacters()
    End Sub

    Async Sub WriteCharacters()
        Dim stringToWrite As StringBuilder = New StringBuilder("Characters in StringBuilder")
        stringToWrite.AppendLine()

        Using writer As StringWriter = New StringWriter(stringToWrite)
            Await writer.WriteAsync("and add characters through StringWriter")
            Console.WriteLine(stringToWrite.ToString())
        End Using
    End Sub
End Module
' The example displays the following output:
'
' Characters in StringBuilder
' and add characters through StringWriter
'

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:
StringWriter.cs
Zdroj:
StringWriter.cs
Zdroj:
StringWriter.cs

Asynchronně zapíše do řetězce paměťovou oblast znaků.

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 řetězce.

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(StringBuilder, CancellationToken)

Zdroj:
StringWriter.cs
Zdroj:
StringWriter.cs
Zdroj:
StringWriter.cs

Asynchronně zapíše textovou reprezentaci tvůrce řetězců do řetězce.

public override System.Threading.Tasks.Task WriteAsync (System.Text.StringBuilder? value, System.Threading.CancellationToken cancellationToken = default);
override this.WriteAsync : System.Text.StringBuilder * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (value As StringBuilder, Optional cancellationToken As CancellationToken = Nothing) As Task

Parametry

value
StringBuilder

Tvůrce řetězců pro zápis do řetězce.

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.

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(StringBuilder).

Platí pro

WriteAsync(Char[], Int32, Int32)

Zdroj:
StringWriter.cs
Zdroj:
StringWriter.cs
Zdroj:
StringWriter.cs

Zapíše podadresu znaků do řetězce asynchronně.

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ů, ze které chcete zapisovat data.

index
Int32

Pozice 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č řetězců je odstraněn.

Zapisovač řetězců je aktuálně používán předchozí operací zápisu.

Příklady

Následující příklad ukazuje, jak psát znaky pomocí WriteAsync(Char[], Int32, Int32) metody .

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

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            WriteCharacters();
        }

        static async void WriteCharacters()
        {
            StringBuilder stringToWrite = new StringBuilder("Characters in StringBuilder");
            stringToWrite.AppendLine();

            using (StringWriter writer = new StringWriter(stringToWrite))
            {
                UnicodeEncoding ue = new UnicodeEncoding();
                char[] charsToAdd = ue.GetChars(ue.GetBytes("and chars to add"));

                await writer.WriteAsync(charsToAdd, 0, charsToAdd.Length);

                Console.WriteLine(stringToWrite.ToString());
            }
        }
    }
}
// The example displays the following output:
//
// Characters in StringBuilder
// and chars to add
//
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        WriteCharacters()
    End Sub

    Async Sub WriteCharacters()
        Dim stringToWrite As StringBuilder = New StringBuilder("Characters in StringBuilder")
        stringToWrite.AppendLine()

        Using writer As StringWriter = New StringWriter(stringToWrite)

            Dim ue As UnicodeEncoding = New UnicodeEncoding()
            Dim charsToAdd() = ue.GetChars(ue.GetBytes("and chars to add"))

            Await writer.WriteAsync(charsToAdd, 0, charsToAdd.Length)

            Console.WriteLine(stringToWrite.ToString())
        End Using
    End Sub
End Module
' The example displays the following output:
'
' Characters in StringBuilder
' and chars to add
'

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