StreamWriter.WriteAsync Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Escreve dados de forma assíncrona no fluxo.
Sobrecargas
| Name | Description |
|---|---|
| WriteAsync(Char[], Int32, Int32) |
A Assíncrona escreve um subarray de caracteres no fluxo. |
| WriteAsync(ReadOnlyMemory<Char>, CancellationToken) |
Escreve assíncronamente uma região de memória de caracteres no fluxo. |
| WriteAsync(Char) |
Escreve assíncronamente um carácter no fluxo. |
| WriteAsync(String) |
Escreve assíncronamente uma string no fluxo. |
WriteAsync(Char[], Int32, Int32)
A Assíncrona escreve um subarray de caracteres no fluxo.
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
Parâmetros
- buffer
- Char[]
Um array de caracteres que contém os dados a escrever.
- index
- Int32
A posição do carácter no buffer onde começar a ler dados.
- count
- Int32
O número máximo de caracteres para escrever.
Devoluções
Uma tarefa que representa a operação de escrita assíncrona.
- Atributos
Exceções
buffer é null.
O index ponto positivo count é maior do que o comprimento do buffer.
index ou count é negativo.
O escritor do stream está descartado.
O escritor de stream está atualmente em uso por uma operação de escrita anterior.
Exemplos
O exemplo seguinte mostra como escrever múltiplos caracteres num ficheiro de texto usando o WriteAsync(Char[], Int32, Int32) método.
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
Observações
Este método armazena na tarefa que devolve todas as exceções de não-utilização que o equivalente síncrono do método pode lançar. Se uma exceção for armazenada na tarefa devolvida, essa exceção será lançada quando a tarefa for aguardada. As exceções de uso, como ArgumentException, ainda são lançadas de forma síncrona. Para as exceções armazenadas, veja as exceções lançadas por Write(Char[], Int32, Int32).
Aplica-se a
WriteAsync(ReadOnlyMemory<Char>, CancellationToken)
Escreve assíncronamente uma região de memória de caracteres no fluxo.
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
Parâmetros
- buffer
- ReadOnlyMemory<Char>
A região de memória de carácter para escrever no fluxo.
- cancellationToken
- CancellationToken
O token para monitorizar pedidos de cancelamento. O valor predefinido é None.
Devoluções
Uma tarefa que representa a operação de escrita assíncrona.
Exceções
O token de cancelamento foi cancelado. Esta exceção é armazenada na tarefa devolvida.
Aplica-se a
WriteAsync(Char)
Escreve assíncronamente um carácter no fluxo.
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
Parâmetros
- value
- Char
A personagem a escrever para o stream.
Devoluções
Uma tarefa que representa a operação de escrita assíncrona.
- Atributos
Exceções
O escritor do stream está descartado.
O escritor de stream está atualmente em uso por uma operação de escrita anterior.
Exemplos
O exemplo seguinte mostra como escrever um único carácter (a letra "a") num ficheiro de texto usando o WriteAsync(Char) método.
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
Observações
Este método armazena na tarefa que devolve todas as exceções de não-utilização que o equivalente síncrono do método pode lançar. Se uma exceção for armazenada na tarefa devolvida, essa exceção será lançada quando a tarefa for aguardada. As exceções de uso, como ArgumentException, ainda são lançadas de forma síncrona. Para as exceções armazenadas, veja as exceções lançadas por Write(Char).
Aplica-se a
WriteAsync(String)
Escreve assíncronamente uma string no fluxo.
public:
override System::Threading::Tasks::Task ^ WriteAsync(System::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
Parâmetros
- value
- String
A cadeia para escrever no fluxo. Se value for null, nada está escrito.
Devoluções
Uma tarefa que representa a operação de escrita assíncrona.
- Atributos
Exceções
O escritor do stream está descartado.
O escritor de stream está atualmente em uso por uma operação de escrita anterior.
Exemplos
O exemplo seguinte mostra como escrever uma string num ficheiro de texto usando o WriteAsync(String) método.
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
Observações
Este método armazena na tarefa que devolve todas as exceções de não-utilização que o equivalente síncrono do método pode lançar. Se uma exceção for armazenada na tarefa devolvida, essa exceção será lançada quando a tarefa for aguardada. As exceções de uso, como ArgumentException, ainda são lançadas de forma síncrona. Para as exceções armazenadas, veja as exceções lançadas por Write(String).