TextWriter Classe

Definição

Representa um gravador que pode escrever uma série sequencial de caracteres. Essa classe é abstrata.

public ref class TextWriter abstract : IDisposable
public ref class TextWriter abstract : MarshalByRefObject, IAsyncDisposable, IDisposable
public ref class TextWriter abstract : MarshalByRefObject, IDisposable
public abstract class TextWriter : IDisposable
public abstract class TextWriter : MarshalByRefObject, IAsyncDisposable, IDisposable
public abstract class TextWriter : MarshalByRefObject, IDisposable
[System.Serializable]
public abstract class TextWriter : MarshalByRefObject, IDisposable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class TextWriter : MarshalByRefObject, IDisposable
type TextWriter = class
    interface IDisposable
type TextWriter = class
    inherit MarshalByRefObject
    interface IAsyncDisposable
    interface IDisposable
type TextWriter = class
    inherit MarshalByRefObject
    interface IDisposable
[<System.Serializable>]
type TextWriter = class
    inherit MarshalByRefObject
    interface IDisposable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type TextWriter = class
    inherit MarshalByRefObject
    interface IDisposable
Public MustInherit Class TextWriter
Implements IDisposable
Public MustInherit Class TextWriter
Inherits MarshalByRefObject
Implements IAsyncDisposable, IDisposable
Public MustInherit Class TextWriter
Inherits MarshalByRefObject
Implements IDisposable
Herança
TextWriter
Herança
Derivado
Atributos
Implementações

Exemplos

A classe TextWriter é uma classe abstrata. Portanto, você não instanciá-lo em seu código. A classe StreamWriter deriva de TextWriter e fornece implementações dos membros para gravar em um fluxo. O exemplo a seguir mostra como gravar duas linhas que consistem em valores de cadeia de caracteres em um arquivo de texto usando o método WriteLineAsync(String).

using System.IO;

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

        static async void WriteCharacters()
        {
            using (StreamWriter writer = File.CreateText("newfile.txt"))
            {
                await writer.WriteLineAsync("First line of example");
                await writer.WriteLineAsync("and second line");
            }
        }
    }
}
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.WriteLineAsync("First line of example")
            Await writer.WriteLineAsync("and second line")
        End Using
    End Sub
End Module

Comentários

TextWriter é a classe base abstrata de StreamWriter e StringWriter, que gravam caracteres em fluxos e cadeias de caracteres, respectivamente. Use uma instância de TextWriter para gravar um objeto em uma cadeia de caracteres, gravar cadeias de caracteres em um arquivo ou serializar XML. Você também pode usar a instância de TextWriter para gravar texto em um repositório de backup personalizado usando as mesmas APIs que você usaria para uma cadeia de caracteres ou um fluxo ou para adicionar suporte à formatação de texto.

Todos os métodos Write de TextWriter ter tipos de dados primitivos como parâmetros gravam os valores como cadeias de caracteres.

Por padrão, um TextWriter não é thread-safe. Consulte TextWriter.Synchronized para obter um wrapper thread-safe.

Importante

Esse tipo implementa a interface IDisposable. Quando terminar de usar qualquer tipo que deriva desse tipo, você deverá descartá-lo direta ou indiretamente. Para descartar o tipo diretamente, chame seu método Dispose em um bloco de try/catch. Para descartá-lo indiretamente, use um constructo de linguagem como using (em C#) ou Using (no Visual Basic). Para obter mais informações, consulte Dispose e a seção "Using an Object that Implements IDisposable" no tópico da interface IDisposable.

Para obter uma lista de tarefas comuns de E/S, consulte Tarefas comuns de E/S.

Notas aos Implementadores

Uma classe derivada deve implementar minimamente o método Write(Char) para tornar uma instância útil de TextWriter.

Construtores

TextWriter()

Inicializa uma nova instância da classe TextWriter.

TextWriter(IFormatProvider)

Inicializa uma nova instância da classe TextWriter com o provedor de formato especificado.

Campos

CoreNewLine

Armazena os caracteres de nova linha usados para este TextWriter.

Null

Fornece um TextWriter sem repositório de backup que pode ser gravado, mas não lido.

Propriedades

Encoding

Quando substituído em uma classe derivada, retorna a codificação de caracteres na qual a saída é gravada.

FormatProvider

Obtém um objeto que controla a formatação.

NewLine

Obtém ou define a cadeia de caracteres do terminador de linha usada pelo TextWriteratual.

Métodos

Close()

Fecha o gravador atual e libera todos os recursos do sistema associados ao gravador.

CreateBroadcasting(TextWriter[])

Cria uma instância de TextWriter que grava entradas fornecidas em cada um dos gravadores em writers.

CreateObjRef(Type)

Cria um objeto que contém todas as informações relevantes necessárias para gerar um proxy usado para se comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
Dispose()

Libera todos os recursos usados pelo objeto TextWriter.

Dispose(Boolean)

Libera os recursos não gerenciados usados pelo TextWriter e, opcionalmente, libera os recursos gerenciados.

DisposeAsync()

Libera de forma assíncrona todos os recursos usados pelo objeto TextWriter.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Flush()

Limpa todos os buffers do gravador atual e faz com que todos os dados em buffer sejam gravados no dispositivo subjacente.

FlushAsync()

Limpa de forma assíncrona todos os buffers do gravador atual e faz com que todos os dados em buffer sejam gravados no dispositivo subjacente.

FlushAsync(CancellationToken)

Limpa de forma assíncrona todos os buffers do gravador atual e faz com que todos os dados em buffer sejam gravados no dispositivo subjacente.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetLifetimeService()
Obsoleto.

Recupera o objeto de serviço de tempo de vida atual que controla a política de tempo de vida para essa instância.

(Herdado de MarshalByRefObject)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
InitializeLifetimeService()
Obsoleto.

Obtém um objeto de serviço de tempo de vida para controlar a política de tempo de vida dessa instância.

(Herdado de MarshalByRefObject)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto MarshalByRefObject atual.

(Herdado de MarshalByRefObject)
Synchronized(TextWriter)

Cria um wrapper thread-safe em torno do TextWriterespecificado.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
Write(Boolean)

Grava a representação de texto de um valor Boolean no fluxo de texto.

Write(Char)

Grava um caractere no fluxo de texto.

Write(Char[])

Grava uma matriz de caracteres no fluxo de texto.

Write(Char[], Int32, Int32)

Grava uma subarray de caracteres no fluxo de texto.

Write(Decimal)

Grava a representação de texto de um valor decimal no fluxo de texto.

Write(Double)

Grava a representação de texto de um valor de ponto flutuante de 8 bytes no fluxo de texto.

Write(Int32)

Grava a representação de texto de um inteiro com sinal de 4 bytes no fluxo de texto.

Write(Int64)

Grava a representação de texto de um inteiro com sinal de 8 bytes no fluxo de texto.

Write(Object)

Grava a representação de texto de um objeto no fluxo de texto chamando o método ToString nesse objeto.

Write(ReadOnlySpan<Char>)

Grava um intervalo de caracteres no fluxo de texto.

Write(Single)

Grava a representação de texto de um valor de ponto flutuante de 4 bytes no fluxo de texto.

Write(String)

Grava uma cadeia de caracteres no fluxo de texto.

Write(String, Object)

Grava uma cadeia de caracteres formatada no fluxo de texto usando a mesma semântica que o método Format(String, Object).

Write(String, Object, Object)

Grava uma cadeia de caracteres formatada no fluxo de texto usando a mesma semântica que o método Format(String, Object, Object).

Write(String, Object, Object, Object)

Grava uma cadeia de caracteres formatada no fluxo de texto usando a mesma semântica que o método Format(String, Object, Object, Object).

Write(String, Object[])

Grava uma cadeia de caracteres formatada no fluxo de texto usando a mesma semântica que o método Format(String, Object[]).

Write(String, ReadOnlySpan<Object>)

Grava uma cadeia de caracteres formatada no fluxo de texto usando a mesma semântica que Format(String, ReadOnlySpan<Object>).

Write(StringBuilder)

Grava um construtor de cadeias de caracteres no fluxo de texto.

Write(UInt32)

Grava a representação de texto de um inteiro sem sinal de 4 bytes no fluxo de texto.

Write(UInt64)

Grava a representação de texto de um inteiro sem sinal de 8 bytes no fluxo de texto.

WriteAsync(Char)

Grava um caractere no fluxo de texto de forma assíncrona.

WriteAsync(Char[])

Grava uma matriz de caracteres no fluxo de texto de forma assíncrona.

WriteAsync(Char[], Int32, Int32)

Grava uma subarray de caracteres no fluxo de texto de forma assíncrona.

WriteAsync(ReadOnlyMemory<Char>, CancellationToken)

Grava de forma assíncrona uma região de memória de caractere no fluxo de texto.

WriteAsync(String)

Grava uma cadeia de caracteres no fluxo de texto de forma assíncrona.

WriteAsync(StringBuilder, CancellationToken)

Grava de forma assíncrona um construtor de cadeias de caracteres no fluxo de texto.

WriteLine()

Grava um terminador de linha no fluxo de texto.

WriteLine(Boolean)

Grava a representação de texto de um valor Boolean no fluxo de texto, seguido por um terminador de linha.

WriteLine(Char)

Grava um caractere no fluxo de texto, seguido por um terminador de linha.

WriteLine(Char[])

Grava uma matriz de caracteres no fluxo de texto, seguido por um terminador de linha.

WriteLine(Char[], Int32, Int32)

Grava uma subarray de caracteres no fluxo de texto, seguida por um terminador de linha.

WriteLine(Decimal)

Grava a representação de texto de um valor decimal no fluxo de texto, seguido por um terminador de linha.

WriteLine(Double)

Grava a representação de texto de um valor de ponto flutuante de 8 bytes no fluxo de texto, seguido por um terminador de linha.

WriteLine(Int32)

Grava a representação de texto de um inteiro com sinal de 4 bytes no fluxo de texto, seguido por um terminador de linha.

WriteLine(Int64)

Grava a representação de texto de um inteiro com sinal de 8 bytes no fluxo de texto, seguido por um terminador de linha.

WriteLine(Object)

Grava a representação de texto de um objeto no fluxo de texto chamando o método ToString nesse objeto, seguido por um terminador de linha.

WriteLine(ReadOnlySpan<Char>)

Grava a representação de texto de um intervalo de caracteres no fluxo de texto, seguido por um terminador de linha.

WriteLine(Single)

Grava a representação de texto de um valor de ponto flutuante de 4 bytes no fluxo de texto, seguido por um terminador de linha.

WriteLine(String)

Grava uma cadeia de caracteres no fluxo de texto, seguida por um terminador de linha.

WriteLine(String, Object)

Grava uma cadeia de caracteres formatada e uma nova linha no fluxo de texto, usando a mesma semântica que o método Format(String, Object).

WriteLine(String, Object, Object)

Grava uma cadeia de caracteres formatada e uma nova linha no fluxo de texto, usando a mesma semântica que o método Format(String, Object, Object).

WriteLine(String, Object, Object, Object)

Grava uma cadeia de caracteres formatada e uma nova linha no fluxo de texto, usando a mesma semântica que Format(String, Object).

WriteLine(String, Object[])

Grava uma cadeia de caracteres formatada e uma nova linha no fluxo de texto, usando a mesma semântica que Format(String, Object).

WriteLine(String, ReadOnlySpan<Object>)

Grava uma cadeia de caracteres formatada e uma nova linha no fluxo de texto, usando a mesma semântica que Format(String, ReadOnlySpan<Object>).

WriteLine(StringBuilder)

Grava a representação de texto de um construtor de cadeias de caracteres no fluxo de texto, seguido por um terminador de linha.

WriteLine(UInt32)

Grava a representação de texto de um inteiro sem sinal de 4 bytes no fluxo de texto, seguido por um terminador de linha.

WriteLine(UInt64)

Grava a representação de texto de um inteiro sem sinal de 8 bytes no fluxo de texto, seguido por um terminador de linha.

WriteLineAsync()

Grava de forma assíncrona um terminador de linha no fluxo de texto.

WriteLineAsync(Char)

Grava de forma assíncrona um caractere no fluxo de texto, seguido por um terminador de linha.

WriteLineAsync(Char[])

Grava de forma assíncrona uma matriz de caracteres no fluxo de texto, seguida por um terminador de linha.

WriteLineAsync(Char[], Int32, Int32)

Grava de forma assíncrona uma subarray de caracteres no fluxo de texto, seguida por um terminador de linha.

WriteLineAsync(ReadOnlyMemory<Char>, CancellationToken)

Grava de forma assíncrona a representação de texto de uma região de memória de caractere no fluxo de texto, seguido por um terminador de linha.

WriteLineAsync(String)

Grava de forma assíncrona uma cadeia de caracteres no fluxo de texto, seguida por um terminador de linha.

WriteLineAsync(StringBuilder, CancellationToken)

Grava de forma assíncrona a representação de texto de um construtor de cadeias de caracteres no fluxo de texto, seguido por um terminador de linha.

Implantações explícitas de interface

IDisposable.Dispose()

Para obter uma descrição desse membro, consulte Dispose().

Métodos de Extensão

ConfigureAwait(IAsyncDisposable, Boolean)

Configura como as esperas nas tarefas retornadas de um descartável assíncrono serão executadas.

Aplica-se a

Confira também