c# - 用于复制文件路径中的文件夹结构的函数

ren*_*ind 18 .net c# filesystems system.io.directory

我需要一个简单的函数,它将FileInfo和destination_directory_name作为输入,从fileinfo获取文件路径,并在作为第二个参数传递的destination_directory_name中复制它.

对于前 filepath是"d:\ recordings\location1\client1\job1\file1.ext该函数应该在destination_directory_name中创建目录(如果它们不存在)并在创建目录后复制该文件.

小智 49

System.IO.Directory.CreateDirectory可用于创建最终目录,如果它们不存在,它还将自动创建路径中的所有文件夹.

//Will create all three directories (if they do not already exist).
System.IO.Directory.CreateDirectory("C:\\First\\Second\\Third")
Run Code Online (Sandbox Code Playgroud)

  • 无需解释.代码片段就足够了.此外,MSDN特别声明"..如果它们不存在,它将自动创建路径中的所有文件夹",并且@Andy是正确的. (2认同)

M4N*_*M4N 32

我正在使用以下方法:

public static void CreateDirectory(DirectoryInfo directory)
{
    if (!directory.Parent.Exists)
        CreateDirectory(directory.Parent);
    directory.Create();
}
Run Code Online (Sandbox Code Playgroud)

以这种方式使用它:

// path is your file path
string directory = Path.GetDirectoryName(path);
CreateDirectory(new DirectoryInfo(directory));
Run Code Online (Sandbox Code Playgroud)