Jas*_* T. 3 c# file-io streamwriter
所以这是我的代码
if (!File.Exists(pathName))
{
File.Create(pathName);
}
StreamWriter outputFile = new StreamWriter(pathName,true);
Run Code Online (Sandbox Code Playgroud)
但每当我第一次运行程序时,都会创建带文件的路径.然而,一旦我到达StreamWriter行,我的程序崩溃了,因为它说我的fie正在被另一个进程使用.File.Create和StreamWriter语句之间是否缺少某些内容?
File.Create不只是创建文件 - 它还会打开它进行读写.因此,当您尝试创建StreamWriter时,该文件确实已经在使用:您自己的进程.
pathName如果文件不存在,StreamWriter将创建指定的文件,因此您只需删除File.Exists检查并简化您的代码:
using (var writer = new StreamWriter(pathName, true))
{
// ...
}
Run Code Online (Sandbox Code Playgroud)
来自MSDN:
StreamWriter构造函数(流)
为指定的文件[...]初始化StreamWriter类的新实例.如果文件存在,则可以覆盖或附加.如果该文件不存在,则此构造函数将创建一个新文件.
| 归档时间: |
|
| 查看次数: |
382 次 |
| 最近记录: |