什么是在我执行File.Move之前确保文件夹存在的最简单方法?

时间:2011-08-03 11:13:03

标签: c# file io directory

我有一个文件夹结构:

  

C:\ Temp [完全空]

我有一个文件,我想转移到

  

C:\ TEMP \ Folder1中\ MyFile.txt的

如果我执行File.Move,我将收到错误消息,指出此文件夹不存在。

是否有任何C#方法可以创建到目前为止的所有文件夹:

  

C:\ TEMP \ Folder1中\

3 个答案:

答案 0 :(得分:59)

使用System.IO.Directory.CreateDirectory

附加说明:您不必先检查它是否存在。无论如何,CreateDirectory都会做正确的事。

答案 1 :(得分:8)

If Directory.Exists("somedir")

有关详细信息,请参阅here

如果目录不存在,则创建目录

Directory.CreateDirectory("path of dir");

它将创建所有目录和子目录,请参阅here

答案 2 :(得分:3)

您可以使用Directory.CreateDirectory()。显然,它会在路径中创建所有目录。

请记住,在创建目录的时间和移动文件的时间之间,有人可能已删除了目录。因此,当您尝试移动文件时,无法确定该目录是否实际存在。一个可能的例外是使用filesystem transactions