嗨嗨~又見面啦
在我們學會檔案和資料夾操作後,接著我們來學習資料檔寫入、讀出和刪除吧~
要寫入檔案可用StreamWriter物件,此物件最簡單的建立方式就是由FileInfo類別的CreateText和AppendText建立。若要讀出資料檔內容,可使用StreamReader物件,該物件可透過OpenText來建立。
我接下來示範一下,資料檔的寫入、讀出、刪除和將新資料附加在資料檔最後
寫入:
下面簡單示範將"Hello C# World!"寫入到新建立的D:\myDir\test.txt內。若test.txt已存在,則會覆蓋原有資料。
FileInfo f = new FileInfo("D:\\myDir\\test.txt"); //開新檔案
StreamWriter sw = f.CreateText(); //產生StreamWriter的sw物件
sw.WriteLine("Hello C# World!"); //寫入"Hello C# World!"
sw.Flush(); //將存於Buffer緩衝區內資料寫入指定檔案
sw.Close(); //關閉目前資料流
讀出:
將放在D:\myDir下檔案名稱為test.txt內容讀入到主控台應用程式畫面上。有三種方式:
FileInfo f = new FileInfo("D:\\myDir\\test.txt");
StreamReader sr = f.OpenText(); // 產生StreamReader的sr物件
//一次讀取檔案內所有資料
Console.WriteLine(sr.ReadToEnd()); //由目前位置開啟並取到資料流的末端
sr.Close(); //關閉目前的資料流
//一次讀取檔案內一行資料
while (sr.Peek() >= 0) //sr.Peek可傳回下一個可讀取字元,若傳回-1則代表沒字元可讀取
Console.WriteLine(sr.ReadLine()); //由目前資料流開始讀取一行
sr.Close(); //關閉目前的資料流
//一次讀取檔案內一個字元
while (sr.Peek() >= 0) //sr.Peek可傳回下一個可讀取字元,若傳回-1則代表沒字元可讀取
Console.Write((char)sr.Read()); //sr.Read()會往前移一個字元位置,並取得目前一個字元的字元碼
sr.Close(); //關閉目前的資料流
刪除:
檢查檔案是否存在,存在刪除,找不到則顯示沒有
FileInfo f = new FileInfo("D:\\myDir\\test.txt");
if (f.Exists)
{
f.Delete();
Console.WriteLine("檔案刪除成功");
}
else
Console.WriteLine("找不到檔案");
將新資料附加在資料檔最後:
下面簡單示範將"Hello C# World!"附加到的D:\myDir\test.txt內最後面。
FileInfo f = new FileInfo("D:\\myDir\\test.txt");
StreamWriter sw = f.AppendText(); //開舊檔產生StreamWriter的sw物件
sw.Write("Hello C# World!"); //將"Hello C# World!"附加在檔案最後面
sw.Flush();
sw.Close();
今天就到這邊結束啦~~
掰掰(逃跑