如何在一个方法调用中创建文件及其父目录?

ibr*_*maz 7 c# file-io refactoring

我想创建一个特定目录中的文件.例如:C:\ x\y\z\a.txt

对于此操作,我必须创建用于创建文件的目录.

Directory.CreateDirectory(@"C:\x\y\z\");
File.Create(@"C:\x\y\z\aTextFile.txt");
Run Code Online (Sandbox Code Playgroud)

但我真的很想知道我可以在单行代码中执行此操作.

任何帮助和想法都将受到高度赞赏.

Pet*_*nov 5

简单:添加一个函数

void MySingleLineOfCodeFunction(string path, string filename)
{
    Directory.Createdirectory(path);
    File.Create(filename).Dispose();
}
Run Code Online (Sandbox Code Playgroud)

然后使用一行代码:

MySingleLineOfCodeFunction(@"C:\x\y\z\", "a.txt");
Run Code Online (Sandbox Code Playgroud)

我想说的是,代码之间没有区别。其中一些是由微软人员编写的,而另一些则是我们普通人编写的。但电脑没有什么区别。:)

  • 您确实通过将其组合到一个方法中将其减少到一行。调用这两个 API 调用的方法与调用这两个 API 调用的某些 Microsoft 函数之间没有区别。您仍然必须执行两次调用,一次针对目录,一次针对文件。 (2认同)

Lar*_*rry 3

据我所知,.NET框架中没有同时创建目录的文件创建方法。

如果代码中多次重复“目录检查/创建,然后创建文件”模式,则必须在方法中实现它。