C# StreamReader類(lèi)實(shí)現(xiàn)讀取文件的方法
在 C# 語(yǔ)言中 StreamReader 類(lèi)用于從流中讀取字符串。它繼承自 TextReader 類(lèi)。
StreamReader 類(lèi)的構(gòu)造方法有很多,這里介紹一些常用的構(gòu)造方法,如下表所示。
構(gòu)造方法 | 說(shuō)明 |
---|---|
StreamReader(Stream stream) | 為指定的流創(chuàng)建 StreamReader 類(lèi)的實(shí)例 |
StreamReader(string path) | 為指定路徑的文件創(chuàng)建 StreamReader 類(lèi)的實(shí)例 |
StreamReader(Stream stream, Encoding encoding) | 用指定的字符編碼為指定的流初始化 StreamReader 類(lèi)的一個(gè)新實(shí)例 |
StreamReader(string path, Encoding encoding) | 用指定的字符編碼為指定的文件名初始化 StreamReader 類(lèi)的一個(gè)新實(shí)例 |
使用該表中的構(gòu)造方法即可創(chuàng)建 StreamReader 類(lèi)的實(shí)例,通過(guò)實(shí)例調(diào)用其提供的類(lèi)成 員能進(jìn)行文件的讀取操作。
StreamReader 類(lèi)中的常用屬性和方法如下表所示。
屬性或方法 | 作用 |
---|---|
Encoding CurrentEncoding | 只讀屬性,獲取當(dāng)前流中使用的編碼方式 |
bool EndOfStream | 只讀屬性,獲取當(dāng)前的流位置是否在流結(jié)尾 |
void Close() | 關(guān)閉流 |
int Peek() | 獲取流中的下一個(gè)字符的整數(shù),如果沒(méi)有獲取到字符, 則返回 -1 |
int Read() | 獲取流中的下一個(gè)字符的整數(shù) |
int Read(char[] buffer, int index, int count) | 從指定的索引位置開(kāi)始將來(lái)自當(dāng)前流的指定的最多字符讀到緩沖區(qū) |
string ReadLine() | 從當(dāng)前流中讀取一行字符并將數(shù)據(jù)作為字符串返回 |
string ReadToEnd() | 讀取來(lái)自流的當(dāng)前位置到結(jié)尾的所有字符 |
下面通過(guò)實(shí)例來(lái)演示 StreamReader 類(lèi)的應(yīng)用。
【實(shí)例】讀取 D 盤(pán) code 文件夾下 test.txt 文件中的信息。
根據(jù)題目要求,先在 D 盤(pán)下創(chuàng)建文件夾并創(chuàng)建 test.txt 文件,然后寫(xiě)入兩行字符,分別是 Hello 和 Lucy,代碼如下。
class Program { static void Main(string[] args) { //定義文件路徑 string path = @"D:\\code\\test.txt"; //創(chuàng)建 StreamReader 類(lèi)的實(shí)例 StreamReader streamReader = new StreamReader(path); //判斷文件中是否有字符 while (streamReader.Peek() != -1) { //讀取文件中的一行字符 string str = streamReader.ReadLine(); Console.WriteLine(str); } streamReader.Close(); } }
執(zhí)行上面的代碼,效果如下圖所示。
在讀取文件中的信息時(shí),除了可以使用 ReadLine 方法以外,還可以使用Read、ReadToEnd方法來(lái)讀取。
到此這篇關(guān)于C# StreamReader類(lèi)實(shí)現(xiàn)讀取文件的方法的文章就介紹到這了,更多相關(guān)C# StreamReader類(lèi)讀取文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C# datatable 不能通過(guò)已刪除的行訪問(wèn)該行的信息處理方法
采用datatable.Rows[i].Delete()刪除行后再訪問(wèn)該表時(shí)出現(xiàn)出現(xiàn)“不能通過(guò)已刪除的行訪問(wèn)該行的信息”的錯(cuò)誤2012-11-11WPF如何利用附加屬性修改ShowGridLines效果詳解
這篇文章主要給大家介紹了關(guān)于WPF如何利用附加屬性修改ShowGridLines效果的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2018-04-04C# 微信支付 wx.chooseWXPay 簽名錯(cuò)誤的解決方法
本篇文章主要介紹了C# 微信支付 wx.chooseWXPay 簽名錯(cuò)誤的解決方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-12-12C#實(shí)現(xiàn)CSV文件讀寫(xiě)的示例詳解
這篇文章主要介紹了CsvHelper、TextFieldParser、正則表達(dá)式三種解析CSV文件的方法,順帶也會(huì)介紹一下CSV文件的寫(xiě)方法,需要的可以參考一下2023-05-05