国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

使用 System.IO 和 Visual C# .NET 讀取文本文件

2024-07-10 13:07:18
字體:
來源:轉載
供稿:網友

使用 system.io 和 visual c# .net 讀取文本文件

在 visual c# .net 中讀取文本文件 打開和讀取文件進行讀取訪問是輸入/輸出 (io) 功能的一個非常重要的部分,即使您不需要寫入到相關文件,也是如此。 本示例打開一個文件進行讀取,這適用于讀取文本文件,但不適用于讀取二進制文件。 本示例使用多個可用于打開文件的方法之一。 雖然很多數據結構都可以用于存儲從文件中檢索到的信息,但是,arraylist 類是使用最簡便的結構。 為了打開文件和從文件中讀取,本示例使用了 system.io 名稱空間中的對象,尤其是 system.io.streamreader 類。

備注: 本示例需要某種形式的文本 (.txt) 文件以從中讀取。

若要在 visual c# .net 中加載和讀取文本文件,請按照下列步驟操作: 1. 打開 visual studio .net。在 c# 中新建控制臺應用程序。 visual studio 給您創建一個靜態類以及一個空的 main() 過程。 
2. 確保該項目至少引用了 system 名稱空間。 對 system、system.io 和 system.collections 名稱空間使用 using 語句,這樣,在后面的代碼中就不需要限定這些名稱空間中的聲明了。 這些語句必須位于所有其他聲明之前。
using system;
using system.io;
using system.collections;
3. 若要打開一個文件以進行讀取,請創建 streamreader 對象的一個新實例,并將該文件的路徑傳遞到構造函數中(如下所示):
streamreader objreader = new streamreader("c://test.txt");
4. 您需要一個字符串變量,處理時將文件的每一行存儲到該變量中。 因為將把這些行添加到一個 arraylist 中,所以還應該聲明和創建一個該類型的對象。
string sline="";
arraylist arrtext = new arraylist();
5. 讀取該文件有很多種方法,其中包括一次性讀取整個文件的 readtoend 方法。 但是,在本示例中,您可以使用 readline 方法每次只讀取文件中的一行。 當到達文件結尾時,此方法返回空值,這可以用于結束循環。 當您從文件中讀取每一行時,可以使用 arraylist 的 add 方法將這些行插入到 arraylist 類中。
while (sline != null)
{
sline = objreader.readline();
if (sline != null)
arrtext.add(sline);
}
objreader.close();
6. 使用 for each 循環將新填充的 arraylist 內容寫入到控制臺(如下所示):
foreach (string soutput in arrtext)
console.writeline(soutput);
console.readline();
7. 保存并運行您的代碼,它將給控制臺生成文件的內容列表。 

 

using system;
using system.io;
using system.collections;

namespace textfilereader_csharp
...{
/**////
/// summary description for class1.
///
class class1
...{
static void main(string[] args)
...{
streamreader objreader = new streamreader("c:/test.txt");
string sline="";
arraylist arrtext = new arraylist();

while (sline != null)
...{
sline = objreader.readline();
if (sline != null)
arrtext.add(sline);
}
                        objreader.close();

foreach (string soutput in arrtext)
console.writeline(soutput);
console.readline();
}
}
}

疑難解答 在處理文件 i/o 時要注意一些問題,其中包括以下事項: ? 無論何時訪問某個文件,要讀取或寫入的文件都有可能不在系統上,或者正在使用當中。 
? 在處理文件之前,本示例先將整個文件讀取到內存中。 您可能會遇到文件太大而無法存儲到內存中,或者沒有權限訪問該文件的情況。 
以上的任何情形都會引發一個異常。 最好始終提供一個 try...catch 塊來處理這些常見問題。

 

 

菜鳥學堂:
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 慈利县| 寻乌县| 阿合奇县| 永康市| 武胜县| 巍山| 革吉县| 贵阳市| 商南县| 辽宁省| 华亭县| 普兰店市| 兴安盟| 宣武区| 扶沟县| 额济纳旗| 邓州市| 宕昌县| 旬阳县| 华坪县| 淄博市| 鹰潭市| 和龙市| 察雅县| 淳安县| 辛集市| 湖北省| 循化| 阿瓦提县| 咸宁市| 肥西县| 喀喇沁旗| 沙湾县| 永吉县| 晋江市| 西峡县| 涟源市| 兴义市| 临泽县| 普洱| 蓝田县|