在c#中克廷文件/目录



我在几个驱动器中有一些文件夹/文件,比如

C:New Folder
C:a.txt
D:New FolderNew Folder
D:New Foldera.txt

现在我想在c驱动器中创建一个目录树,看起来像

C:mytempFolderdriveCNew Folder
C:mytempFolderdriveCa.txt
C:mytempFolderdriveDNew FolderNew Folder
C:mytempFolderdriveDNew Foldera.txt

有没有什么捷径可以在c#中实现这一点?

使用目录。创建以创建目录:

Directory.Create("c:mytempFolderdriveCNew Folder");

要创建文件,您必须在该位置写入一个文本文件,如下所示:

File.Create("D:New Foldera.txt").Close;

(它返回一个FileSream,所以记住之后关闭它,否则你会锁定文件)

编辑:

好吧,我明白你的意思了。在这种情况下,你需要做这样的事情:

循环目录及其子目录中的所有文件

当您遇到一个文件或文件夹时,您需要使用上述命令在目标文件夹(即c:\mytempFolder)中创建它。要获取驱动器,只需获取路径字符串中的第一个字符(假设它总是有一个驱动器号)。

这里有一个简单的方法,但您可能需要对其进行调整,以考虑文件路径的不一致性:

string targetPath = @"C:mytempFolder";
string path = @"D:New Foldera.txt";
char driveLetter = path[0];
string filePath = path.SubString(3);
string newFilePath = Path.Combine(targetPath, Path.Combine(String.Format("drive{0}", driveLetter.ToString()), filePath));
   if(System.IO.Directory.Exists("c://gg"))
        {
            System.IO.Directory.CreateDirectory("C:\gg//");
            System.IO.File.Create("C:\gg//file.txt");
        }
        else
        {
            Response.Write("ALREADY FOLDER EXIST");
        }

相关内容

  • 没有找到相关文章

最新更新