StringReader Classe
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.
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
- 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 |
| 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) |