小编典典

在 C# 中创建一个空文件

all

在 C#/.NET 中创建空文件的最简单/规范的方法是什么?

到目前为止我能找到的最简单的方法是:

System.IO.File.WriteAllLines(filename, new string[0]);

阅读 33

收藏
2022-06-23

共1个答案

小编典典

使用 justFile.Create会使文件保持打开状态,这可能不是您想要的。

你可以使用:

using (File.Create(filename)) ;

请注意,这看起来有点奇怪。您可以改用大括号:

using (File.Create(filename)) {}

或者直接调用Dispose

File.Create(filename).Dispose();

无论哪种方式,如果您要在多个地方使用它,您可能应该考虑将其包装在辅助方法中,例如

public static void CreateEmptyFile(string filename)
{
    File.Create(filename).Dispose();
}

请注意,据我所知,Dispose直接调用而不是使用using语句在这里并没有太大的区别——唯一
可以File.Create产生影响的方法是线程在调用和调用之间中止Dispose。如果存在该竞争条件,我怀疑它 也会
存在于using版本中,如果线程在File.Create方法的最后中止,就在返回值之前......

2022-06-23