小编She*_*don的帖子

c#Directory.CreateDirectory(path),我应该先检查路径是否存在吗?

我需要将一些文件复制到一个目录中,但有时该目录尚不存在,必须先创建.大多数情况下,目录将存在,因为它只需要创建一次.

我知道我可以放在Directory.CreateDirectory()文件副本之前,CreateDirectory()如果目录已经存在则会返回.

string destFolder; // path to destination
string sourceFolder; // path to source
Directory.CreateDirectory( destFolder ); // this will work even if destFolder exists
File.Copy( sourceFolder + sourceFileName, destFolder + sourceFileName );
Run Code Online (Sandbox Code Playgroud)

但我知道几乎在所有情况下目标文件夹都已存在,因此检查它是否存在是否更快,而不是CreateDirectory()反正调用.

if( !Directory.Exists( destFolder ) ) // check if it exists first
{
    Directory.CreateDirectory( destFolder );
}
// now move on to using the folder
Run Code Online (Sandbox Code Playgroud)

考虑到用户只会做一次,我真的不在乎创建目录需要多长时间.我更感兴趣的是,if声明是否Directory.Exists()Directory.CreateDirectory()确定目录已存在所需的时间更快.

Directory.CreateDirectory()虽然它可能存在,但每次打电话都"感觉"浪费,所以我"先感觉更好",但是它仍然是一个函数调用,所以我真的甚至通过额外的代码来获得优势if陈述和Directory.Exists()检查?

c# directory file

11
推荐指数
2
解决办法
2223
查看次数

标签 统计

c# ×1

directory ×1

file ×1