TextReader Classe
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta un visualizzatore in grado di leggere una serie sequenziale di caratteri.
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.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class TextReader : MarshalByRefObject, IDisposable
type TextReader = class
interface IDisposable
type TextReader = class
inherit MarshalByRefObject
interface IDisposable
[<System.Serializable>]
type TextReader = class
inherit MarshalByRefObject
interface IDisposable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type TextReader = class
inherit MarshalByRefObject
interface IDisposable
Public MustInherit Class TextReader
Implements IDisposable
Public MustInherit Class TextReader
Inherits MarshalByRefObject
Implements IDisposable
- Ereditarietà
-
TextReader
- Ereditarietà
- Derivato
- Attributi
- Implementazioni
La classe TextReader è astratta. Di conseguenza, non verrà creata un'istanza nel codice. La StreamReader classe deriva da TextReader e fornisce implementazioni dei membri per la lettura da un flusso. Nell'esempio seguente viene illustrato come leggere tutti i caratteri in un file usando il StreamReader.ReadAsync(Char[], Int32, Int32) metodo . Controlla se ogni carattere è una lettera, una cifra o uno spazio vuoto prima di aggiungere il carattere a un'istanza della StringBuilder classe .
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
TextReader è la classe base astratta di StreamReader e StringReader, che legge i caratteri dai flussi e dalle stringhe, rispettivamente. Utilizzare queste classi derivate per aprire un file di testo per la lettura di un intervallo di caratteri specificato o per creare un lettore basato su un flusso esistente.
Importante
Il tipo implementa l'interfaccia IDisposable. Al termine dell'uso di qualsiasi tipo che deriva da questo tipo, è necessario eliminarlo direttamente o indirettamente. Per eliminare direttamente il tipo, chiamare il metodo Dispose in un blocco try
/catch
. Per eliminarlo indirettamente, utilizzare un costrutto di linguaggio come ad esempio using
in C# o Using
in Visual Basic. Per altre informazioni, vedere Dispose e la sezione "Using an Object that Implements IDisposable" nell'argomento dell'interfaccia IDisposable .
Una classe derivata deve implementare minimamente i Peek() metodi e Read() per rendere un'istanza utile di TextReader.
Text |
Inizializza una nuova istanza della classe TextReader. |
Null |
Fornisce un oggetto |
Close() |
Chiude l'oggetto TextReader e libera tutte le risorse di sistema associate a |
Create |
Consente di creare un oggetto che contiene tutte le informazioni rilevanti necessarie per la generazione del proxy utilizzato per effettuare la comunicazione con un oggetto remoto. (Ereditato da MarshalByRefObject) |
Dispose() |
Rilascia tutte le risorse usate dall'oggetto TextReader. |
Dispose(Boolean) |
Rilascia le risorse non gestite usate da TextReader e, facoltativamente, le risorse gestite. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
Get |
Funge da funzione hash predefinita. (Ereditato da Object) |
Get |
Obsoleti.
Consente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza. (Ereditato da MarshalByRefObject) |
Get |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
Initialize |
Obsoleti.
Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza. (Ereditato da MarshalByRefObject) |
Memberwise |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
Memberwise |
Crea una copia dei riferimenti dell'oggetto MarshalByRefObject corrente. (Ereditato da MarshalByRefObject) |
Peek() |
Legge il carattere successivo senza modificare lo stato del visualizzatore o dell'origine del carattere. Restituisce il successivo carattere disponibile senza leggerlo effettivamente dal lettore. |
Read() |
Legge il carattere successivo dal lettore di testo e fa avanzare di un carattere la posizione del carattere. |
Read(Char[], Int32, Int32) |
Legge un numero massimo specificato di caratteri dal lettore corrente e scrive i dati in un buffer, a partire dall'indice specificato. |
Read(Span<Char>) |
Legge i caratteri dal lettore corrente e scrive i dati nel buffer specificato. |
Read |
Legge un numero massimo specificato di caratteri dal lettore di testo corrente in modo asincrono e scrive i dati in un buffer, a partire dall'indice specificato. |
Read |
Legge in modo asincrono i caratteri dal flusso corrente in un blocco di memoria. |
Read |
Legge un numero massimo specificato di caratteri dal lettore di testo corrente e scrive i dati in un buffer, a partire dall'indice specificato. |
Read |
Legge i caratteri dal flusso corrente e scrive i dati in un buffer. |
Read |
Legge un numero massimo specificato di caratteri dal lettore di testo corrente in modo asincrono e scrive i dati in un buffer, a partire dall'indice specificato. |
Read |
Legge in modo asincrono i caratteri dal flusso corrente e scrive i dati in un buffer. |
Read |
Legge una riga di caratteri dal lettore di testo e restituisce i dati come stringa. |
Read |
Legge una riga di caratteri in modo asincrono e restituisce i dati come stringa. |
Read |
Legge una riga di caratteri in modo asincrono e restituisce i dati come stringa. |
Read |
Legge tutti i caratteri dalla posizione corrente fino alla fine del lettore di testo e li restituisce come singola stringa. |
Read |
Legge in modo asincrono tutti i caratteri dalla posizione corrente fino alla fine del lettore di testo e li restituisce come singola stringa. |
Read |
Legge in modo asincrono tutti i caratteri dalla posizione corrente fino alla fine del lettore di testo e li restituisce come singola stringa. |
Synchronized(Text |
Crea un wrapper thread-safe per l'oggetto |
To |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
IDisposable. |
Per una descrizione di questo membro, vedere Dispose(). |
Prodotto | Versioni |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1 |
UWP | 10.0 |
Feedback su .NET
.NET è un progetto di open source. Selezionare un collegamento per fornire feedback: