TextReader Sınıf

Tanım

Sıralı bir karakter serisini okuyabilen bir okuyucudur.

public ref class TextReader abstract : IDisposable
public ref class TextReader abstract : MarshalByRefObject, IDisposable
public abstract class TextReader : IDisposable
[System.Serializable]
public abstract class TextReader : MarshalByRefObject, IDisposable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class TextReader : MarshalByRefObject, IDisposable
public abstract class TextReader : MarshalByRefObject, IDisposable
type TextReader = class
    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
type TextReader = class
    inherit MarshalByRefObject
    interface IDisposable
Public MustInherit Class TextReader
Implements IDisposable
Public MustInherit Class TextReader
Inherits MarshalByRefObject
Implements IDisposable
Devralma
TextReader
Devralma
Türetilmiş
Öznitelikler
Uygulamalar

Örnekler

TextReader sınıfı soyut bir sınıftır. Bu nedenle, kodunuzda örneği oluşturmazsınız. StreamReader sınıfı öğesinden TextReader türetilir ve bir akıştan okumak için üyelerin uygulamalarını sağlar. Aşağıdaki örnekte, yöntemini kullanarak dosyadaki tüm karakterlerin nasıl okunduğu gösterilmektedir StreamReader.ReadAsync(Char[], Int32, Int32) . Sınıfın bir örneğine StringBuilder karakter eklemeden önce her karakterin harf, rakam veya boşluk olup olmadığını denetler.

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

Açıklamalar

TextReader, akışlardan ve dizelerden sırasıyla karakterleri okuyan ve StringReadersoyut temel sınıfıdırStreamReader. Belirtilen karakter aralığını okumak üzere bir metin dosyası açmak veya var olan bir akışı temel alan bir okuyucu oluşturmak için bu türetilmiş sınıfları kullanın.

Important

Bu tür IDisposable arabirimini uygular. Bu türden türetilen herhangi bir türü kullanmayı bitirdiğinizde, doğrudan veya dolaylı olarak atmalısınız. Türü doğrudan atabilmek için, bir Disposetry/ bloğunda catch yöntemini çağırın. Bunu dolaylı olarak atmak için using (C#'de) veya Using (Visual Basic'te) gibi bir dil yapısı kullanın. Daha fazla bilgi için Dispose ve arabirim konusunun "IDisposable Uygulayan Bir Nesne Kullanma" bölümüne IDisposable bakın.

Uygulayanlara Notlar

Türetilmiş bir sınıfın Peek() kullanışlı bir örneğini TextReaderoluşturmak için ve Read() yöntemlerini en az düzeyde uygulaması gerekir.

Oluşturucular

Name Description
TextReader()

TextReader sınıfının yeni bir örneğini başlatır.

Alanlar

Name Description
Null

Okunacak veri içermeyen bir TextReader sağlar.

Yöntemler

Name Description
Close()

öğesini TextReader kapatır ve ile TextReaderilişkili tüm sistem kaynaklarını serbest bırakır.

CreateObjRef(Type)

Uzak bir nesneyle iletişim kurmak için kullanılan bir ara sunucu oluşturmak için gereken tüm ilgili bilgileri içeren bir nesne oluşturur.

(Devralındığı yer: MarshalByRefObject)
Dispose()

Nesnesi tarafından TextReader kullanılan tüm kaynakları serbest bırakır.

Dispose(Boolean)

tarafından TextReader kullanılan yönetilmeyen kaynakları serbest bırakır ve isteğe bağlı olarak yönetilen kaynakları serbest bırakır.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetLifetimeService()

Bu örnek için yaşam süresi ilkesini denetleen geçerli yaşam süresi hizmet nesnesini alır.

(Devralındığı yer: MarshalByRefObject)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
InitializeLifetimeService()

Bu örneğin yaşam süresi ilkesini denetlemek için bir yaşam süresi hizmet nesnesi alır.

(Devralındığı yer: MarshalByRefObject)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
MemberwiseClone(Boolean)

Geçerli MarshalByRefObject nesnenin sığ bir kopyasını oluşturur.

(Devralındığı yer: MarshalByRefObject)
Peek()

Okuyucunun veya karakter kaynağının durumunu değiştirmeden sonraki karakteri okur. Okuyucudan okumadan bir sonraki kullanılabilir karakteri döndürür.

Read()

Metin okuyucudan sonraki karakteri okur ve karakter konumunu bir karakter ilerletir.

Read(Char[], Int32, Int32)

Geçerli okuyucudan belirtilen en fazla karakter sayısını okur ve verileri belirtilen dizinden başlayarak bir arabelleğe yazar.

Read(Span<Char>)

Geçerli okuyucudaki karakterleri okur ve verileri belirtilen arabelleğe yazar.

ReadAsync(Char[], Int32, Int32)

Geçerli metin okuyucudan belirtilen en fazla karakter sayısını zaman uyumsuz olarak okur ve verileri belirtilen dizinden başlayarak bir arabelleğe yazar.

ReadAsync(Memory<Char>, CancellationToken)

Geçerli akıştan gelen karakterleri zaman uyumsuz olarak bir bellek bloğuna okur.

ReadBlock(Char[], Int32, Int32)

Geçerli metin okuyucudan belirtilen en fazla karakter sayısını okur ve verileri belirtilen dizinden başlayarak bir arabelleğe yazar.

ReadBlock(Span<Char>)

Geçerli akıştan karakterleri okur ve verileri arabelleğe yazar.

ReadBlockAsync(Char[], Int32, Int32)

Geçerli metin okuyucudan belirtilen en fazla karakter sayısını zaman uyumsuz olarak okur ve verileri belirtilen dizinden başlayarak bir arabelleğe yazar.

ReadBlockAsync(Memory<Char>, CancellationToken)

Geçerli akıştan karakterleri zaman uyumsuz olarak okur ve verileri arabelleğe yazar.

ReadLine()

Metin okuyucudan bir karakter satırı okur ve verileri dize olarak döndürür.

ReadLineAsync()

Bir karakter satırını zaman uyumsuz olarak okur ve verileri dize olarak döndürür.

ReadToEnd()

Geçerli konumdan metin okuyucunun sonuna kadar olan tüm karakterleri okur ve bunları tek bir dize olarak döndürür.

ReadToEndAsync()

Geçerli konumdan metin okuyucunun sonuna kadar olan tüm karakterleri zaman uyumsuz olarak okur ve bunları tek bir dize olarak döndürür.

Synchronized(TextReader)

Belirtilen TextReaderçevresinde iş parçacığı güvenli bir sarmalayıcı oluşturur.

ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

Name Description
IDisposable.Dispose()

Bu üyenin açıklaması için bkz Dispose(). .

Şunlara uygulanır

Ayrıca bkz.