我见过很多关于VB.NET或C#.NET的示例/教程,其中作者使用FileStream
来编写/读取文件。我的问题是这个方法有什么好处,而不是使用System.IO.File.Read/Write
?为什么大多数使用FileStream
的示例只能使用一行代码才能实现?
答案 0 :(得分:34)
FileStream
让您对编写文件有了更多的控制权,这在某些情况下会很有用。它还允许您保持文件句柄打开和连续写入数据而不放弃控制。流的一些用例:
System.IO.File
包含文件操作的包装器,用于执行基本操作,例如保存文件,将文件读取到行等等。它只是对FileStream
的抽象。
从.NET源代码这里是WriteAllText
内部的作用:
private static void InternalWriteAllText(string path,
string contents, Encoding encoding)
{
Contract.Requires(path != null);
Contract.Requires(encoding != null);
Contract.Requires(path.Length > 0);
using (StreamWriter sw = new StreamWriter(path, false, encoding))
sw.Write(contents);
}