Partage via


TextReader Classe

Définition

Représente un lecteur capable de lire une série séquentielle de caractères.

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
Héritage
TextReader
Héritage
Dérivé
Attributs
Implémente

Exemples

La classe TextReader est une classe abstraite. Par conséquent, vous ne l’instanciez pas dans votre code. La StreamReader classe dérive de TextReader et fournit des implémentations des membres pour la lecture à partir d’un flux. L’exemple suivant montre comment lire tous les caractères d’un fichier à l’aide de la StreamReader.ReadAsync(Char[], Int32, Int32) méthode . Il vérifie si chaque caractère est une lettre, un chiffre ou un espace blanc avant d’ajouter le caractère à un instance de la 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

Remarques

TextReader est la classe de base abstraite de StreamReader et StringReader, qui lit les caractères des flux et des chaînes, respectivement. Utilisez ces classes dérivées pour ouvrir un fichier texte afin de lire une plage de caractères spécifiée ou pour créer un lecteur basé sur un flux existant.

Important

Ce type implémente l'interface IDisposable. Une fois que vous avez terminé d’utiliser un type qui dérive de ce type, vous devez le supprimer directement ou indirectement. Pour supprimer directement le type Dispose, appelez sa méthode dans un bloc try/catch. Pour la supprimer indirectement, utilisez une construction de langage telle que using (dans C#) ou Using (dans Visual Basic). Pour plus d’informations, consultez Supprimer et la section « Utilisation d’un objet qui implémente IDisposable » dans la rubrique d’interface IDisposable .

Notes pour les responsables de l’implémentation

Une classe dérivée doit implémenter au minimum les Peek() méthodes et pour Read() créer un instance utile de TextReader.

Constructeurs

TextReader()

Initialise une nouvelle instance de la classe TextReader.

Champs

Null

Fournit un TextReader sans données à lire.

Méthodes

Close()

Ferme le TextReader et libère toutes les ressources système associées au TextReader.

CreateObjRef(Type)

Crée un objet contenant toutes les informations appropriées requises pour générer un proxy permettant de communiquer avec un objet distant.

(Hérité de MarshalByRefObject)
Dispose()

Libère toutes les ressources utilisées par l'objet TextReader.

Dispose(Boolean)

Libère les ressources non managées utilisées par TextReader et libère éventuellement les ressources managées.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetLifetimeService()
Obsolète.

Récupère l'objet de service de durée de vie en cours qui contrôle la stratégie de durée de vie de cette instance.

(Hérité de MarshalByRefObject)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
InitializeLifetimeService()
Obsolète.

Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance.

(Hérité de MarshalByRefObject)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
MemberwiseClone(Boolean)

Crée une copie superficielle de l'objet MarshalByRefObject actuel.

(Hérité de MarshalByRefObject)
Peek()

Lit le caractère suivant sans modifier l'état du lecteur ou la source du caractère. Retourne le prochain caractère disponible sans le lire réellement à partir du flux lecteur.

Read()

Lit le caractère suivant à partir du lecteur de texte et avance la position d'un caractère.

Read(Char[], Int32, Int32)

Lit un nombre maximal spécifié de caractères à partir du lecteur actuel et écrit les données dans une mémoire tampon, en commençant à l'index spécifié.

Read(Span<Char>)

Lit les caractères à partir du lecteur actuel et écrit les données dans la mémoire tampon spécifiée.

ReadAsync(Char[], Int32, Int32)

Lit de façon asynchrone un nombre maximal de caractères spécifié dans le lecteur de texte actuel et écrit les données dans une mémoire tampon, en commençant à l'index spécifié.

ReadAsync(Memory<Char>, CancellationToken)

Lit de façon asynchrone les caractères du flux actuel dans un bloc de mémoire.

ReadBlock(Char[], Int32, Int32)

Lit un nombre maximal spécifié de caractères à partir du lecteur de texte actuel et écrit les données dans une mémoire tampon, en commençant à l'index spécifié.

ReadBlock(Span<Char>)

Lit les caractères à partir du flux actuel et écrit les données dans une mémoire tampon.

ReadBlockAsync(Char[], Int32, Int32)

Lit de façon asynchrone un nombre maximal de caractères spécifié dans le lecteur de texte actuel et écrit les données dans une mémoire tampon, en commençant à l'index spécifié.

ReadBlockAsync(Memory<Char>, CancellationToken)

Lit de façon asynchrone les caractères à partir du flux actuel et écrit les données dans une mémoire tampon.

ReadLine()

Lit une ligne de caractères à partir du lecteur de texte et retourne les données sous forme de chaîne.

ReadLineAsync()

Lit une ligne de caractères de manière asynchrone et retourne les données sous forme de chaîne.

ReadLineAsync(CancellationToken)

Lit une ligne de caractères de manière asynchrone et retourne les données sous forme de chaîne.

ReadToEnd()

Lit tous les caractères entre la position actuelle et la fin du lecteur de texte, puis les retourne sous forme d'une chaîne.

ReadToEndAsync()

Lit tous les caractères entre la position actuelle et la fin du lecteur de texte de manière asynchrone, puis les retourne sous la forme d'une chaîne.

ReadToEndAsync(CancellationToken)

Lit tous les caractères entre la position actuelle et la fin du lecteur de texte de manière asynchrone, puis les retourne sous la forme d'une chaîne.

Synchronized(TextReader)

Crée un wrapper thread-safe autour du TextReader spécifié.

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Implémentations d’interfaces explicites

IDisposable.Dispose()

Pour obtenir une description de ce membre, consultez Dispose().

S’applique à

Voir aussi