日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#使用StreamReader类读取文件文件

發布時間:2023/12/18 C# 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#使用StreamReader类读取文件文件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

輸入流用于從外部源讀取數據。在很多情況下,數據源是磁盤上的文件或網絡的某些位置。任何可以發送數據的位置都可以是數據源,比如網絡應用程序、Web服務,甚至是控制臺。

用來從文件中讀取數據的類是StreamReader。同StreamWriter一樣,這是一個通用類,可以用于任何流。

StreamReader對象的創建方式非常類似于StreamWriter對象。創建它的最常見方式是使用前面創建的FileStream對象:

FileStream fs = new FileStream("test.txt",FileMode.Open);
StreamReader sr = new StreamReader(fs);

同StreamWriter一樣,StreamReader類可以直接在包含具體文件路徑的字符串中創建:

StreamReader sr = new StreamReader("test.txt");

using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
class Program
{
static void Main(string[]args)
{
?? try
?? {
??? FileStream aFile = new FileStream(@"c:\祝福.txt", FileMode.Open);
??? StreamReader sr = new StreamReader(aFile);
??? string strLine = sr.ReadLine();
??? while(strLine != null)
??? {
???? Console.WriteLine(strLine);
???? strLine = sr.ReadLine();
??? }
??? sr.Close();
?? }
?? catch (IOException ex)
?? {
??? Console.WriteLine(ex.Message);
??? Console.ReadLine();
??? return ;
?? }
Console.ReadKey();

}
}

FileStream構造函數找不到該文件,就會拋出異常。

這個應用程序非常類似于前面的應用程序。其明顯的區別就是,它是在讀取數據,而不是寫入數據。同前面一樣,必須導入System.IO命名空間,才能訪問需要的類。

使用ReadLine()方法從文件中讀取文本。這個方法讀取回車符之前的文本,并以字符串的形式返回結果文本。當到達文件尾時,該方法就返回空值,通過這種方法可以測試文件是否已到達了尾部。注意使用while循環時,在執行循環體的代碼之前進行檢查,確保讀取的行不為空,這樣就只顯示文件的有效內容:

strLine = sr.ReadLine();
while(strLine != null)
{
?? Console.WriteLine(strLine);
?? strLine = sr.ReadLine();
}

ReadLine()方法不是在文件中訪問數據的惟一方法。StreamReader類還有許多讀取數據的方法。

讀取數據最簡單的方法是Read()。此方法將流的下一個字符作為正整數值返回,如果到達了流的結尾處,則返回–1。使用Convert實用類可以把這個值轉換為字符。在上面的示例中,程序的主體可以按如下方式編寫:

StreamReader sr = new StreamReader(aFile);
int nChar;
nChar = sr.Read();
while(nChar != -1)
{
?? Console.Write(Convert.ToChar(nChar));
?? nChar = sr.Read();
}
sr.Close();

對于小型文件,可以使用一個非常方便的方法,即ReadToEnd()方法。此方法讀取整個文件,并將其作為字符串返回。在此,前面的應用程序可以簡化為:

StreamReader sr = new StreamReader(aFile);
strLine = sr.ReadToEnd();
Console.WriteLine(strLine);
sr.Close();

這似乎非常容易和方便,但必須小心。將所有的數據讀取到字符串對象中,會迫使文件中的數據放到內存中。應根據數據文件的大小禁止這樣處理。如果數據文件非常大,最好將數據留在文件中,并使用StreamReader的方法訪問文件。

轉載于:https://www.cnblogs.com/tanding/archive/2012/07/02/2572691.html

總結

以上是生活随笔為你收集整理的C#使用StreamReader类读取文件文件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。