TextReader Classe

Definição

Representa um leitor que pode ler uma série sequencial de caracteres.Represents a reader that can read a sequential series of characters.

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

Exemplos

A classe TextReader é uma classe abstrata.The TextReader class is an abstract class. Portanto, você não a instancia em seu código.Therefore, you do not instantiate it in your code. A classe StreamReader deriva de TextReader e fornece implementações dos membros para leitura a partir de um fluxo.The StreamReader class derives from TextReader and provides implementations of the members for reading from a stream. O exemplo a seguir mostra como ler todos os caracteres em um arquivo usando o método StreamReader.ReadAsync(Char[], Int32, Int32).The following example shows how to read all the characters in a file by using the StreamReader.ReadAsync(Char[], Int32, Int32) method. Ele verifica se cada caractere é uma letra, um dígito ou um espaço em branco antes de adicionar o caractere a uma instância da classe StringBuilder.It checks whether each character is a letter, digit, or white space before adding the character to an instance of the StringBuilder class.

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

namespace WpfApplication
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private async void Button_Click_1(object sender, RoutedEventArgs e)
        {
            string filename = @"C:\Example\existingfile.txt";
            char[] result;
            StringBuilder builder = new StringBuilder();

            using (StreamReader reader = File.OpenText(filename))
            {
                result = new char[reader.BaseStream.Length];
                await reader.ReadAsync(result, 0, (int)reader.BaseStream.Length);
            }
           
            foreach (char c in result)
            {
                if (char.IsLetterOrDigit(c) || char.IsWhiteSpace(c))
                {
                    builder.Append(c);
                }
            }
            FileOutput.Text = builder.ToString();
        }
    }
}
Imports System.Text
Imports System.IO

Class MainWindow

    Private Async Sub Button_Click_1(sender As Object, e As RoutedEventArgs)
        Dim filename As String = "C:\Example\existingfile.txt"
        Dim result() As Char
        Dim builder As StringBuilder = New StringBuilder()

        Using reader As StreamReader = File.OpenText(filename)
            ReDim result(reader.BaseStream.Length)
            Await reader.ReadAsync(result, 0, reader.BaseStream.Length)
        End Using

        For Each c As Char In result
            If (Char.IsLetterOrDigit(c) Or Char.IsWhiteSpace(c)) Then
                builder.Append(c)
            End If
            Next
        FileOutput.Text = builder.ToString()
    End Sub
End Class

Comentários

TextReader é a classe base abstrata de StreamReader e StringReader, que lê os caracteres de fluxos e cadeias, respectivamente.TextReader is the abstract base class of StreamReader and StringReader, which read characters from streams and strings, respectively. Use essas classes derivadas para abrir um arquivo de texto para ler um intervalo especificado de caracteres ou para criar um leitor com base em um fluxo existente.Use these derived classes to open a text file for reading a specified range of characters, or to create a reader based on an existing stream.

Importante

Esse tipo implementa a interface IDisposable.This type implements the IDisposable interface. Quando você terminar de usar qualquer tipo derivado desse tipo, deverá descartá-lo direta ou indiretamente.When you have finished using any type that derives from this type, you should dispose of it either directly or indirectly. Para descartar o tipo diretamente, chame o método Dispose dele em um bloco try/catch.To dispose of the type directly, call its Dispose method in a try/catch block. Para descartá-lo indiretamente, use um constructo de linguagem como using ( em C#) ou Using (em Visual Basic).To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). Para obter mais informações, consulte Dispose e a seção "usando um objeto que implementa IDisposable" no tópico IDisposable interface.For more information, see Dispose and the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

Notas aos Implementadores

Uma classe derivada deve implementar minimamente os métodos Peek() e Read() para tornar uma instância útil do TextReader.A derived class must minimally implement the Peek() and Read() methods to make a useful instance of TextReader.

Construtores

TextReader()

Inicia uma nova instância da classe TextReader.Initializes a new instance of the TextReader class.

Campos

Null

Fornece um TextReader sem dados a serem lidos.Provides a TextReader with no data to read from.

Métodos

Close()

Fecha o TextReader e libera os recursos do sistema associados ao TextReader.Closes the TextReader and releases any system resources associated with the TextReader.

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.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Herdado de MarshalByRefObject)
Dispose()

Libera todos os recursos usados pelo objeto TextReader.Releases all resources used by the TextReader object.

Dispose(Boolean)

Libera os recursos não gerenciados usados pelo TextReader e, opcionalmente, libera os recursos gerenciados.Releases the unmanaged resources used by the TextReader and optionally releases the managed resources.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetLifetimeService()

Recupera o objeto de serviço de tempo de vida atual que controla a política de ciclo de vida para esta instância.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Herdado de MarshalByRefObject)
GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
InitializeLifetimeService()

Obtém um objeto de serviço de tempo de vida para controlar a política de tempo de vida para essa instância.Obtains a lifetime service object to control the lifetime policy for this instance.

(Herdado de MarshalByRefObject)
MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto MarshalByRefObject atual.Creates a shallow copy of the current MarshalByRefObject object.

(Herdado de MarshalByRefObject)
Peek()

Lê o próximo caractere sem alterar o estado do leitor ou a origem do caractere.Reads the next character without changing the state of the reader or the character source. Retorna o próximo caractere disponível sem realmente lê-lo no leitor.Returns the next available character without actually reading it from the reader.

Read()

Lê o próximo caractere do leitor de texto e avança a posição do caractere em um caractere.Reads the next character from the text reader and advances the character position by one character.

Read(Char[], Int32, Int32)

Lê um número máximo especificado de caracteres do leitor atual e grava os dados em um buffer, começando no índice especificado.Reads a specified maximum number of characters from the current reader and writes the data to a buffer, beginning at the specified index.

Read(Span<Char>)

Lê os caracteres do leitor atual e grava os dados no buffer especificado.Reads the characters from the current reader and writes the data to the specified buffer.

ReadAsync(Char[], Int32, Int32)

Lê um número máximo especificado de caracteres do leitor de texto atual de forma assíncrona e grava os dados em um buffer, começando no índice especificado.Reads a specified maximum number of characters from the current text reader asynchronously and writes the data to a buffer, beginning at the specified index.

ReadAsync(Memory<Char>, CancellationToken)

Lê de forma assíncrona os caracteres do fluxo atual para um bloco de memória.Asynchronously reads the characters from the current stream into a memory block.

ReadBlock(Char[], Int32, Int32)

Lê um máximo especificado de caracteres do leitor de texto atual e grava os dados em um buffer, começando no índice especificado.Reads a specified maximum number of characters from the current text reader and writes the data to a buffer, beginning at the specified index.

ReadBlock(Span<Char>)

Lê os caracteres do fluxo atual e grava os dados em um buffer.Reads the characters from the current stream and writes the data to a buffer.

ReadBlockAsync(Char[], Int32, Int32)

Lê um número máximo especificado de caracteres do leitor de texto atual de forma assíncrona e grava os dados em um buffer, começando no índice especificado.Reads a specified maximum number of characters from the current text reader asynchronously and writes the data to a buffer, beginning at the specified index.

ReadBlockAsync(Memory<Char>, CancellationToken)

Lê de forma assíncrona os caracteres do fluxo atual e grava os dados em um buffer.Asynchronously reads the characters from the current stream and writes the data to a buffer.

ReadLine()

Lê uma linha de caracteres do leitor de texto e retorna os dados como uma cadeia de caracteres.Reads a line of characters from the text reader and returns the data as a string.

ReadLineAsync()

Lê uma linha de caracteres assincronamente e retorna os dados como uma cadeia de caracteres.Reads a line of characters asynchronously and returns the data as a string.

ReadToEnd()

Lê todos os caracteres da posição atual até o final do leitor de texto e os retorna como uma cadeia de caracteres.Reads all characters from the current position to the end of the text reader and returns them as one string.

ReadToEndAsync()

Lê todos os caracteres da posição atual até o final do leitor de texto de forma assíncrona e os retorna como uma cadeia de caracteres.Reads all characters from the current position to the end of the text reader asynchronously and returns them as one string.

Synchronized(TextReader)

Cria um wrapper thread-safe em torno do TextReader especificado.Creates a thread-safe wrapper around the specified TextReader.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Herdado de Object)

Implantações explícitas de interface

IDisposable.Dispose()

Para obter uma descrição desse membro, consulte Dispose().For a description of this member, see Dispose().

Aplica-se a

Veja também