TextWriter Classe

Definição

Representa um gravador que pode gravar uma série sequencial de caracteres. Esta 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 cria uma instância dele em seu código. A StreamWriter classe deriva de TextWriter e fornece implementações dos membros para gravação 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 WriteLineAsync(String) método .

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 do 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 do 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 para formatação de texto.

Todos os Write métodos de ter tipos de TextWriter 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 derivado desse tipo, você deverá descartá-lo direta ou indiretamente. Para descartar o tipo diretamente, chame o método Dispose dele em um bloco try/catch. Para descartá-lo indiretamente, use um constructo de linguagem como using ( em C#) ou Using (em Visual Basic). Para obter mais informações, consulte Dispose e a seção "Using an Object that Implements IDisposable" no tópico 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 Write(Char) método 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 esse TextWriter.

Null

Fornece um TextWriter sem nenhum 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 de terminador de linha usada pelo TextWriter atual.

Métodos

Close()

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

CreateBroadcasting(TextWriter[])

Representa um gravador que pode gravar uma série sequencial de caracteres. Esta classe é abstrata.

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 armazenados em buffer sejam gravados no dispositivo subjacente.

FlushAsync()

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

FlushAsync(CancellationToken)

Limpa, de maneira assíncrona, todos os buffers do gravador atual e faz com que todos os dados armazenados 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 ciclo de vida para esta 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 para essa instância.

(Herdado de MarshalByRefObject)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(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 TextWriter especificado.

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 submatriz 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 do método Format(String, Object).

Write(String, Object, Object)

Grava uma cadeia de caracteres formatada no fluxo de texto usando a mesma semântica do 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 do 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 do método Format(String, Object[]).

Write(StringBuilder)

Grava um construtor de cadeia 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 submatriz de caracteres no fluxo de texto de forma assíncrona.

WriteAsync(ReadOnlyMemory<Char>, CancellationToken)

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

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 cadeia 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, seguida 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, seguida por um terminador de linha no fluxo.

WriteLine(Char[], Int32, Int32)

Grava uma submatriz 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, seguida 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(StringBuilder)

Grava a representação de texto de um construtor de cadeia de caracteres no fluxo de texto, seguida 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 no fluxo.

WriteLineAsync(Char[], Int32, Int32)

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

WriteLineAsync(ReadOnlyMemory<Char>, CancellationToken)

Grava de forma assíncrona a representação de texto de uma região da memória do caractere no fluxo de texto, seguida 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 cadeia de caracteres no fluxo de texto, seguida por um terminador de linha.

Implantações explícitas de interface

IDisposable.Dispose()

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

Métodos de Extensão

ConfigureAwait(IAsyncDisposable, Boolean)

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

Aplica-se a

Confira também