TextReader 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
순차적 문자 계열을 읽을 수 있는 판독기를 나타냅니다.
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
- 상속
-
TextReader
- 상속
- 파생
- 특성
- 구현
예제
클래스는 TextReader 추상 클래스입니다. 따라서 코드에서 인스턴스화하지 않습니다. 클래스에서 StreamReader 파생 TextReader 하 고 스트림에서 읽기 위한 멤버의 구현을 제공 합니다. 다음 예제에서는 메서드를 사용하여 파일의 모든 문자를 읽는 StreamReader.ReadAsync(Char[], Int32, Int32) 방법을 보여줍니다. 클래스 인스턴스 StringBuilder 에 문자를 추가하기 전에 각 문자가 문자, 숫자 또는 공백인지 여부를 확인합니다.
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는 각각 스트림과 StringReader문자열에서 문자를 읽는 추상 기본 클래스 StreamReader 및 입니다. 이러한 파생 클래스를 사용하여 지정된 문자 범위를 읽기 위한 텍스트 파일을 열거나 기존 스트림을 기반으로 판독기를 만듭니다.
Important
이 형식은 IDisposable 인터페이스를 구현합니다. 이 형식에서 파생된 모든 형식의 사용을 완료한 경우 직접 또는 간접적으로 삭제해야 합니다. 형식을 직접 삭제하려면 Disposetry/ 블록에서 해당 catch 메서드를 호출합니다. 간접적으로 삭제하려면 using(C#) 또는 Using(Visual Basic)와 같은 언어 구문을 사용합니다. 자세한 내용은 인터페이스 항목의 Dispose 및 "IDisposable을 구현하는 개체 사용" 섹션을 IDisposable 참조하세요.
구현자 참고
파생 클래스는 유용한 인스턴스TextReader를 Peek() 만들기 위해 메서드 및 Read() 메서드를 최소한으로 구현해야 합니다.
생성자
| Name | Description |
|---|---|
| TextReader() |
TextReader 클래스의 새 인스턴스를 초기화합니다. |
필드
| Name | Description |
|---|---|
| Null |
|
메서드
| Name | Description |
|---|---|
| Close() |
와 TextReader 연결된 |
| CreateObjRef(Type) |
원격 개체와 통신하는 데 사용되는 프록시를 생성하는 데 필요한 모든 관련 정보를 포함하는 개체를 만듭니다. (다음에서 상속됨 MarshalByRefObject) |
| Dispose() |
개체에서 사용하는 모든 리소스를 해제합니다 TextReader . |
| Dispose(Boolean) |
관리되지 않는 리소스를 TextReader 해제하고 관리되는 리소스를 선택적으로 해제합니다. |
| Equals(Object) |
지정한 개체와 현재 개체가 같은지 여부를 확인합니다. (다음에서 상속됨 Object) |
| GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
| GetLifetimeService() |
이 인스턴스의 수명 정책을 제어하는 현재 수명 서비스 개체를 검색합니다. (다음에서 상속됨 MarshalByRefObject) |
| GetType() |
현재 인스턴스의 Type 가져옵니다. (다음에서 상속됨 Object) |
| InitializeLifetimeService() |
이 인스턴스의 수명 정책을 제어하는 수명 서비스 개체를 가져옵니다. (다음에서 상속됨 MarshalByRefObject) |
| MemberwiseClone() |
현재 Object단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
| MemberwiseClone(Boolean) |
현재 MarshalByRefObject 개체의 단순 복사본을 만듭니다. (다음에서 상속됨 MarshalByRefObject) |
| Peek() |
판독기 또는 문자 원본의 상태를 변경하지 않고 다음 문자를 읽습니다. 판독기에서 실제로 읽지 않고 사용 가능한 다음 문자를 반환합니다. |
| Read() |
텍스트 판독기에서 다음 문자를 읽고 문자 위치를 한 문자씩 앞으로 이동합니다. |
| Read(Char[], Int32, Int32) |
현재 판독기에서 지정된 최대 문자 수를 읽고 지정된 인덱스에서 시작하여 버퍼에 데이터를 씁니다. |
| Read(Span<Char>) |
현재 판독기에서 문자를 읽고 지정된 버퍼에 데이터를 씁니다. |
| ReadAsync(Char[], Int32, Int32) |
현재 텍스트 판독기에서 지정된 최대 문자 수를 비동기적으로 읽고 지정된 인덱스에서 시작하여 버퍼에 데이터를 씁니다. |
| ReadAsync(Memory<Char>, CancellationToken) |
현재 스트림의 문자를 메모리 블록으로 비동기적으로 읽습니다. |
| ReadBlock(Char[], Int32, Int32) |
현재 텍스트 판독기에서 지정된 최대 문자 수를 읽고 지정된 인덱스에서 시작하여 버퍼에 데이터를 씁니다. |
| ReadBlock(Span<Char>) |
현재 스트림에서 문자를 읽고 버퍼에 데이터를 씁니다. |
| ReadBlockAsync(Char[], Int32, Int32) |
현재 텍스트 판독기에서 지정된 최대 문자 수를 비동기적으로 읽고 지정된 인덱스에서 시작하여 버퍼에 데이터를 씁니다. |
| ReadBlockAsync(Memory<Char>, CancellationToken) |
현재 스트림에서 문자를 비동기적으로 읽고 버퍼에 데이터를 씁니다. |
| ReadLine() |
텍스트 판독기에서 문자 줄을 읽고 데이터를 문자열로 반환합니다. |
| ReadLineAsync() |
문자 줄을 비동기적으로 읽고 데이터를 문자열로 반환합니다. |
| ReadToEnd() |
현재 위치에서 텍스트 판독기의 끝까지 모든 문자를 읽고 하나의 문자열로 반환합니다. |
| ReadToEndAsync() |
현재 위치에서 텍스트 판독기의 끝까지 모든 문자를 비동기적으로 읽고 하나의 문자열로 반환합니다. |
| Synchronized(TextReader) |
지정된 |
| ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
명시적 인터페이스 구현
| Name | Description |
|---|---|
| IDisposable.Dispose() |
이 멤버에 대한 설명은 을 참조하세요 Dispose(). |