C#讀寫檔案宜取方式.md
阿新 • • 發佈:2018-12-11
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);