如何在vb.net中的路径中创建所有文件夹

Kil*_*pot 1 vb.net

基本上,我需要在此路径“ C:\ Users \ Desktop \ Info \ Clients \ Data”中创建所有文件夹,但是甚至根本不存在“ Info”目录,并且还需要创建许多其他路径,这是最好的方法我可以去做吗?

Ste*_*eve 5

命名空间System.IO中的Directory类具有一个称为CreateDirectory的方法,从MSDN备注开始,该方法将创建在传递的路径中提及的每个目录。

除非在路径中指定的目录已经存在或路径的某些部分无效,否则将创建该目录中指定的所有目录。如果目录已经存在,则此方法不会创建新目录,但会为现有目录返回DirectoryInfo对象。

所以你只需要

Directory.CreateDirectory("C:\Users\Desktop\Info\Clients\Data")
Run Code Online (Sandbox Code Playgroud)

如果目录不存在,则会创建所有目录。

在此特定示例中,如上文Hans Passant的评论中所述,您应尝试避免使用硬编码路径。枚举Environment.SpecialFolder是对硬盘上多个众所周知位置的符号引用。您可以将此枚举的元素传递给Environment.GetFolderPath以获取硬盘上的物理路径。

Dim userDesktop = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)
Dim fullPath = Path.Combine(userDesktop, "INFO\Clients\Data")
Directory.CreateDirectory(fullPath)
Run Code Online (Sandbox Code Playgroud)