没用调用flush导致的数据保存丢失
在将字符串保存到文件时,我们采有下面的写法,大部分情况下,都可以直接将数据保存到文件中,
using (var fs = System.IO.File.Create(path))
{
var sw = new StreamWriter(fs, Encoding.UTF8);
sw.Write(content.Trim());
}
但是,当要保存的数据内容超3MB的时候,再按上面的方法写文件,就可能导致文件内容写入被截断。最后找到问题的原因是,原来没有调Flush()方法,下面正确的调用方法
using (var fs = System.IO.File.Create(path))
{
var sw = new StreamWriter(fs, Encoding.UTF8);
sw.Write(content.Trim());
sw.Flush();
}