實現一個 TextReader,使其以一種特定的編碼從字節流中讀取字符。android
1 using System; 2 using System.IO; 3 4 class Test 5 { 6 public static void Main() 7 { 8 try 9 { 10 // Create an instance of StreamReader to read from a file. 11 // The using statement also closes the StreamReader. 12 using (StreamReader sr = new StreamReader("TestFile.txt")) 13 { 14 string line; 15 // Read and display lines from the file until the end of 16 // the file is reached. 17 while ((line = sr.ReadLine()) != null) 18 { 19 Console.WriteLine(line); 20 } 21 } 22 } 23 catch (Exception e) 24 { 25 // Let the user know what went wrong. 26 Console.WriteLine("The file could not be read:"); 27 Console.WriteLine(e.Message); 28 } 29 } 30 }
StreamReader(Stream) | 爲指定的流初始化 StreamReader 類的新實例。ios |
StreamReader(Stream, Boolean) | 用指定的字節順序標記檢測選項,爲指定的流初始化 StreamReader 類的一個新實例。api |
StreamReader(Stream, Encoding) | 用指定的字符編碼爲指定的流初始化 StreamReader 類的一個新實例。app |
StreamReader(Stream, Encoding, Boolean) | 爲指定的流初始化 StreamReader 類的新實例,帶有指定的字符編碼和字節順序標記檢測選項。異步 |
StreamReader(Stream, Encoding, Boolean, Int32) | 爲指定的流初始化 StreamReader 類的新實例,帶有指定的字符編碼、字節順序標記檢測選項和緩衝區大小。async |
StreamReader(Stream, Encoding, Boolean, Int32, Boolean) | 爲指定的流初始化 StreamReader 類的新實例,帶有指定的字符編碼、字節順序標記檢測選項和緩衝區大小,有選擇性的打開流。函數 |
StreamReader(String) | 爲指定的文件名初始化 StreamReader 類的新實例。編碼 |
StreamReader(String, Boolean) | 爲指定的文件名初始化 StreamReader 類的新實例,帶有指定的字節順序標記檢測選項。spa |
StreamReader(String, Encoding) | 用指定的字符編碼,爲指定的文件名初始化 StreamReader 類的一個新實例。代理 |
StreamReader(String, Encoding, Boolean) | 爲指定的文件名初始化 StreamReader 類的新實例,帶有指定的字符編碼和字節順序標記檢測選項。 |
StreamReader(String, Encoding, Boolean, Int32) | 爲指定的文件名初始化 StreamReader 類的新實例,帶有指定字符編碼、字節順序標記檢測選項和緩衝區大小。 |
Null | 空流周圍的 StreamReader。 |
BaseStream | 返回基礎流。 |
CurrentEncoding | 獲取當前 StreamReader 對象正在使用的當前字符編碼。 |
EndOfStream | 獲取一個值,該值表示當前的流位置是否在流的末尾。 |
Close() | 關閉 StreamReader 對象和基礎流,並釋放與讀取器關聯的全部系統資源。 |
CreateObjRef(Type) | 建立一個對象,該對象包含生成用於與遠程對象進行通訊的代理所需的所有相關信息。 (Inherited from MarshalByRefObject) |
DiscardBufferedData() | 清除內部緩衝區。 |
Dispose() | 釋放由 TextReader 對象使用的全部資源。 (Inherited from TextReader) |
Dispose(Boolean) | 關閉基礎流,釋放 StreamReader 使用的未託管資源,同時還能夠根據須要釋放託管資源。 |
Equals(Object) | 肯定指定的對象是否等於當前對象。 (Inherited from Object) |
GetHashCode() | 做爲默認哈希函數。 (Inherited from Object) |
GetLifetimeService() | 檢索控制此實例的生存期策略的當前生存期服務對象。 (Inherited from MarshalByRefObject) |
GetType() | 獲取當前實例的 Type。 (Inherited from Object) |
InitializeLifetimeService() | 獲取生存期服務對象來控制此實例的生存期策略。 (Inherited from MarshalByRefObject) |
MemberwiseClone() | 建立當前 Object 的淺表副本。 (Inherited from Object) |
MemberwiseClone(Boolean) | 建立當前 MarshalByRefObject 對象的淺表副本。 (Inherited from MarshalByRefObject) |
Peek() | 返回下一個可用的字符,但不使用它。 |
Read() | 讀取輸入流中的下一個字符並使該字符的位置提高一個字符。 |
Read(Char[], Int32, Int32) | 從當前流中將指定的最多個字符讀到指定索引位置開始的緩衝區。 |
ReadAsync(Char[], Int32, Int32) | 從當前流中異步讀取指定的最大字符,而且從指定的索引位置開始將該數據寫入緩衝區。 |
ReadBlock(Char[], Int32, Int32) | 從當前流中讀取指定數目的字符並從指定索引開始將該數據寫入緩衝區。 |
ReadBlockAsync(Char[], Int32, Int32) | 從當前流中異步讀取指定的最大字符,而且從指定的索引位置開始將該數據寫入緩衝區。 |
ReadLine() | 從當前流中讀取一行字符並將數據做爲字符串返回。 |
ReadLineAsync() | 從當前流中異步讀取一行字符並將數據做爲字符串返回。 |
ReadToEnd() | 從流的當前位置到末尾讀取全部字符。 |
ReadToEndAsync() | 異步讀取從當前位置到流的結尾的全部字符並將它們做爲一個字符串返回。 |
ToString() | 返回表示當前對象的字符串。 (Inherited from Object) |
IDisposable.Dispose() | 有關此成員的說明,請參見 Dispose()。 (Inherited from TextReader) |