在 C# 中创建文件系统路径分支
本文关键字:路径 分支 文件系统 创建 | 更新日期: 2023-09-27 18:31:55
我有一个我认为可能很简单的问题要回答(对某人来说)。 给定一个路径,比如 C:''A''B''C''D'',假设它在 C# 中尚不存在(当然,C:''A''B 可能不存在),在系统上重新创建该路径的最有效、最紧凑和最优雅的方法是什么?
我唯一能想到的是一个看起来相当肮脏的小路径解析器,以及这会带来的所有潜在陷阱。 我相信这里的很多人以前都遇到过这个小问题,并且有比我想出的更好的解决方案。
那么,您的想法请先生们(和女士们)吗?
>System.IO.Directory.CreateDirectory(@"C:'A'B'C'D'")
就可以了。
MSDN 示例
// Specify the directories you want to manipulate.
DirectoryInfo di = new DirectoryInfo(@"c:'MyDir");
try
{
// Determine whether the directory exists.
if (di.Exists)
{
// Indicate that it already exists.
Console.WriteLine("That path exists already.");
return;
}
// Try to create the directory.
di.Create();
Console.WriteLine("The directory was created successfully.");
}
catch (Exception e)
{
Console.WriteLine("The process failed: {0}", e.ToString());
}
finally {}
Directory.CreateDirectory(@"C:'A'B'C'D'");
创建路径中的所有目录(如果它们尚不存在),甚至返回子目录的 DirectoryInfo 对象(在本例中为 D)。
您可能想了解一下MSDN和"Directory.exists"-Method。
通过这种方式,您可以检测"C:''A''B''C''D..."是否已存在,如果不存在,则可以使用Directory.Create(String directoryName)创建它...
Directory.CreateDirectory 将为您处理这个问题。
string folderPath = "C:'A'B'C'D"
if (!System.IO.Directory.Exists(folderPath))
System.IO.Directory.CreateDirectory(folderPath);