TextReader Kelas

Definisi

Mewakili pembaca yang dapat membaca serangkaian karakter berurutan.

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
Warisan
TextReader
Warisan
Turunan
Atribut
Penerapan

Contoh

Kelas TextReader ini adalah kelas abstrak. Oleh karena itu, Anda tidak membuat instans dalam kode Anda. Kelas StreamReader berasal dari TextReader dan menyediakan implementasi anggota untuk membaca dari aliran. Contoh berikut menunjukkan cara membaca semua karakter dalam file dengan menggunakan StreamReader.ReadAsync(Char[], Int32, Int32) metode . Ini memeriksa apakah setiap karakter adalah huruf, digit, atau spasi putih sebelum menambahkan karakter ke instans StringBuilder kelas.

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

Keterangan

TextReader adalah kelas dasar abstrak dan StreamReaderStringReader, yang masing-masing membaca karakter dari aliran dan string. Gunakan kelas turunan ini untuk membuka file teks untuk membaca rentang karakter tertentu, atau untuk membuat pembaca berdasarkan aliran yang ada.

Penting

Jenis ini mengimplementasikan IDisposable antarmuka. Ketika Anda telah selesai menggunakan jenis apa pun yang berasal dari jenis ini, Anda harus membuangnya baik secara langsung atau tidak langsung. Untuk membuang jenis secara langsung, panggil metodenya Dispose dalam try/catch blok. Untuk membuangnya secara tidak langsung, gunakan konstruksi bahasa seperti using (di C#) atau Using (di Visual Basic). Untuk informasi selengkapnya, lihat Buang dan bagian "Menggunakan Objek yang Mengimplementasikan IDisposable" dalam IDisposable topik antarmuka.

Catatan Bagi Implementer

Kelas turunan harus mengimplementasikan Peek() metode dan Read() secara minimal untuk membuat instans yang berguna dari TextReader.

Konstruktor

TextReader()

Menginisialisasi instans baru kelas TextReader.

Bidang

Null

TextReader Menyediakan tanpa data untuk dibaca.

Metode

Close()

TextReader Menutup dan merilis sumber daya sistem apa pun yang TextReaderterkait dengan .

CreateObjRef(Type)

Membuat objek yang berisi semua informasi relevan yang diperlukan untuk menghasilkan proksi yang digunakan untuk berkomunikasi dengan objek jarak jauh.

(Diperoleh dari MarshalByRefObject)
Dispose()

Merilis semua sumber daya yang TextReader digunakan oleh objek .

Dispose(Boolean)

Merilis sumber daya tidak terkelola yang digunakan oleh TextReader dan secara opsional merilis sumber daya terkelola.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetLifetimeService()
Kedaluwarsa.

Mengambil objek layanan seumur hidup saat ini yang mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
InitializeLifetimeService()
Kedaluwarsa.

Mendapatkan objek layanan seumur hidup untuk mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
MemberwiseClone(Boolean)

Membuat salinan dangkal objek saat ini MarshalByRefObject .

(Diperoleh dari MarshalByRefObject)
Peek()

Membaca karakter berikutnya tanpa mengubah status pembaca atau sumber karakter. Mengembalikan karakter berikutnya yang tersedia tanpa benar-benar membacanya dari pembaca.

Read()

Membaca karakter berikutnya dari pembaca teks dan memajukan posisi karakter dengan satu karakter.

Read(Char[], Int32, Int32)

Membaca jumlah karakter maksimum yang ditentukan dari pembaca saat ini dan menulis data ke buffer, dimulai pada indeks yang ditentukan.

Read(Span<Char>)

Membaca karakter dari pembaca saat ini dan menulis data ke buffer yang ditentukan.

ReadAsync(Char[], Int32, Int32)

Membaca jumlah karakter maksimum yang ditentukan dari pembaca teks saat ini secara asinkron dan menulis data ke buffer, dimulai dari indeks yang ditentukan.

ReadAsync(Memory<Char>, CancellationToken)

Secara asinkron membaca karakter dari aliran saat ini ke dalam blok memori.

ReadBlock(Char[], Int32, Int32)

Membaca jumlah karakter maksimum yang ditentukan dari pembaca teks saat ini dan menulis data ke buffer, dimulai pada indeks yang ditentukan.

ReadBlock(Span<Char>)

Membaca karakter dari aliran saat ini dan menulis data ke buffer.

ReadBlockAsync(Char[], Int32, Int32)

Membaca jumlah karakter maksimum yang ditentukan dari pembaca teks saat ini secara asinkron dan menulis data ke buffer, dimulai dari indeks yang ditentukan.

ReadBlockAsync(Memory<Char>, CancellationToken)

Secara asinkron membaca karakter dari aliran saat ini dan menulis data ke buffer.

ReadLine()

Membaca baris karakter dari pembaca teks dan mengembalikan data sebagai string.

ReadLineAsync()

Membaca baris karakter secara asinkron dan mengembalikan data sebagai string.

ReadLineAsync(CancellationToken)

Membaca baris karakter secara asinkron dan mengembalikan data sebagai string.

ReadToEnd()

Membaca semua karakter dari posisi saat ini ke akhir pembaca teks dan mengembalikannya sebagai satu string.

ReadToEndAsync()

Membaca semua karakter dari posisi saat ini ke akhir pembaca teks secara asinkron dan mengembalikannya sebagai satu string.

ReadToEndAsync(CancellationToken)

Membaca semua karakter dari posisi saat ini ke akhir pembaca teks secara asinkron dan mengembalikannya sebagai satu string.

Synchronized(TextReader)

Membuat pembungkus aman utas di sekitar yang ditentukan TextReader.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

IDisposable.Dispose()

Untuk deskripsi anggota ini, lihat Dispose().

Berlaku untuk

Lihat juga