以txt写string举例,正确代码如下:
private void xie() { FileStream fs = new FileStream("1.txt", FileMode.Create); StreamWriter sw = new StreamWriter(fs, Encoding.Default); sw.Write("123"); sw.Flush(); sw.Close(); //fs.Flush(); //fs.Close(); }
1.sw.flush(),sw.close()用了之后,fs.flush(),fs.close()会报错:
StreamWriter的关闭,也会关闭stream,也就是关闭了FileStream。所以关闭StreamWriter即可。
2.flush函数作用:
强制执行了一次把数据写出硬盘,这样,你写入的数据确实到了文件中,否则如果程序突然中断,你要写入的内容也许还没写到文件中,就造成了数据丢失。
3.当写入数据过大,写到一半就不写了:
没有关闭StreamWriter。