1. 程式人生 > >C#讀寫檔案宜取方式.md

C#讀寫檔案宜取方式.md

C#讀寫檔案宜取方式

首先,不推薦用如下方式讀寫

//讀
using (FileStream fs = File.OpenRead(filePath))
{
    byte[] b = new byte[1024 * 4];
    UTF8Encoding temp = new UTF8Encoding(true);
    
    while (fs.Read(b, 0, b.Length) > 0)
    {
        
    }
}

//寫
using (FileStream fs = File.Create(path)) 
{
    Byte[] info = new UTF8Encoding
(true).GetBytes("This is some text in the file."); fs.Write(info, 0, info.Length); }

因為規定了讀寫塊的大小之後讀,讀到檔案尾後如果位元組不足這個塊大小,會再從上個塊尾讀取一定位元組湊夠指定塊大小。這樣,新檔案就會出現髒資料。

推薦用這種方式讀寫
StreamReader sr = new StreamReader(filePath, Encoding.UTF8);
sr.ReadToEnd();
sr.Close();

File.WriteAllText(filePath, content);