StringReader Classe

Definição

Implementa um TextReader que lê de uma cadeia.

public ref class StringReader : System::IO::TextReader
public class StringReader : System.IO.TextReader
[System.Serializable]
public class StringReader : System.IO.TextReader
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class StringReader : System.IO.TextReader
type StringReader = class
    inherit TextReader
[<System.Serializable>]
type StringReader = class
    inherit TextReader
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type StringReader = class
    inherit TextReader
Public Class StringReader
Inherits TextReader
Herança
StringReader
Herança
Atributos

Exemplos

O exemplo seguinte mostra como ler uma cadeia inteira de forma assíncrona.

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

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

        static async void ReadCharacters()
        {
            StringBuilder stringToRead = new StringBuilder();
            stringToRead.AppendLine("Characters in 1st line to read");
            stringToRead.AppendLine("and 2nd line");
            stringToRead.AppendLine("and the end");

            using (StringReader reader = new StringReader(stringToRead.ToString()))
            {
                string readText = await reader.ReadToEndAsync();
                Console.WriteLine(readText);
            }
        }
    }
}
// The example displays the following output:
//
// Characters in 1st line to read
// and 2nd line
// and the end
//
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        ReadCharacters()
    End Sub

    Async Sub ReadCharacters()
        Dim stringToRead = New StringBuilder()
        stringToRead.AppendLine("Characters in 1st line to read")
        stringToRead.AppendLine("and 2nd line")
        stringToRead.AppendLine("and the end")

        Using reader As StringReader = New StringReader(stringToRead.ToString())
            Dim readText As String = Await reader.ReadToEndAsync()
            Console.WriteLine(readText)
        End Using
    End Sub
End Module
' The example displays the following output:
'
' Characters in 1st line to read
' and 2nd line
' and the end
'

Observações

StringReader permite ler uma cadeia de forma síncrona ou assíncrona. Pode ler um carácter de cada vez com o Read ou o ReadAsync método, uma linha de cada vez usando o ReadLine ou o ReadLineAsync método e uma cadeia inteira usando o ReadToEnd ou o ReadToEndAsync método.

Note

Este tipo implementa a IDisposable interface, mas na verdade não tem recursos para eliminar. Isto significa que não é necessário eliminá-lo chamando diretamente Dispose() ou usando uma construção de linguagem como using (em C#) ou Using (em Visual Basic).

A tabela seguinte lista exemplos de outras tarefas típicas ou relacionadas de E/S.

Para fazer isso... Veja o exemplo neste tópico...
Crie um arquivo de texto. Como: Gravar texto em um arquivo
Escreve num ficheiro de texto. Como: Gravar texto em um arquivo
Lido de um ficheiro de texto. Como: Ler texto de um arquivo
Adicione texto a um ficheiro. Como: Abrir e anexar a um arquivo de log

File.AppendText

FileInfo.AppendText
Obtém o tamanho de um ficheiro. FileInfo.Length
Obtenha as características de um ficheiro. File.GetAttributes
Defina os atributos de um ficheiro. File.SetAttributes
Determina se existe um ficheiro. File.Exists
Lê a partir de um ficheiro binário. Como: Ler e gravar em um arquivo de dados recém-criado
Escreve num ficheiro binário. Como: Ler e gravar em um arquivo de dados recém-criado

Construtores

Name Description
StringReader(String)

Inicializa uma nova instância da StringReader classe que lê a partir da cadeia especificada.

Métodos

Name Description
Close()

Fecha o StringReader.

CreateObjRef(Type)

Cria um objeto que contém toda a informação relevante necessária para gerar um proxy usado para comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
Dispose()

Liberta todos os recursos usados pelo TextReader objeto.

(Herdado de TextReader)
Dispose(Boolean)

Liberta os recursos não geridos usados pelo StringReader e opcionalmente liberta os recursos geridos.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetLifetimeService()

Recupera o objeto de serviço de tempo de vida atual que controla a política de vida útil neste caso.

(Herdado de MarshalByRefObject)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
InitializeLifetimeService()

Obtém-se um objeto de serviço vitalício para controlar a apólice vitalícia neste caso.

(Herdado de MarshalByRefObject)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto atual MarshalByRefObject .

(Herdado de MarshalByRefObject)
Peek()

Devolve o próximo personagem disponível mas não o consome.

Read()

Lê o próximo carácter da cadeia de entrada e avança a posição do carácter em um caractere.

Read(Char[], Int32, Int32)

Lê um bloco de caracteres da cadeia de entrada e avança a posição do carácter por count.

Read(Span<Char>)

Lê todos os caracteres da cadeia de entrada, começando na posição atual, e avança a posição atual até ao fim da cadeia de entrada.

ReadAsync(Char[], Int32, Int32)

Lê um número máximo especificado de caracteres da cadeia atual de forma assíncrona e escreve os dados num buffer, começando no índice especificado.

ReadAsync(Memory<Char>, CancellationToken)

Lê assíncronamente todos os caracteres da cadeia de entrada, começando na posição atual, e avança a posição atual até ao fim da cadeia de entrada.

ReadBlock(Char[], Int32, Int32)

Lê um número máximo especificado de caracteres do leitor de texto atual e escreve os dados num buffer, começando no índice especificado.

(Herdado de TextReader)
ReadBlock(Span<Char>)

Lê todos os caracteres da cadeia de entrada a partir da posição atual e avança a posição atual até ao fim da cadeia de entrada.

ReadBlockAsync(Char[], Int32, Int32)

Lê um número máximo especificado de caracteres da cadeia atual de forma assíncrona e escreve os dados num buffer, começando no índice especificado.

ReadBlockAsync(Memory<Char>, CancellationToken)

Lê assíncronamente todos os caracteres da cadeia de entrada a partir da posição atual e avança a posição atual até ao fim da cadeia de entrada.

ReadLine()

Lê uma linha de caracteres da string corrente e devolve os dados como uma string.

ReadLineAsync()

Lê uma linha de caracteres de forma assíncrona a partir da cadeia atual e devolve os dados como uma cadeia.

ReadToEnd()

Lê todos os caracteres desde a posição atual até ao fim da cadeia e devolve-os como uma única cadeia.

ReadToEndAsync()

Lê todos os caracteres da posição atual até ao fim da cadeia de forma assíncrona e devolve-os como uma única cadeia.

ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)

Implementações de Interface Explícita

Name Description
IDisposable.Dispose()

Para uma descrição deste elemento, veja Dispose().

(Herdado de TextReader)

Aplica-se a

Ver também