如何获得桌面的路径?

时间:2019-07-28 02:39:10

标签: c# getdirectories

我正在尝试在桌面中创建文件夹(使用DirectoryInfo)-我需要获取桌面路径

我尝试使用:

DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.Desktop)

但是,它一直使我进入用户的文件夹(在“桌面”,“音乐”,“ Vidoes”文件夹所在的位置)。

DirectoryInfo dir = new DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "Folder111" );
dir.Create();

2 个答案:

答案 0 :(得分:4)

您没有正确格式化路径。您只是将新文件夹名称添加到桌面文件夹名称。因此,如果桌面文件夹位于C:\Users\MyUsername\Desktop,则当您真正想要的是C:\Users\MyUsername\DesktopFolder111(缺少斜杠)时,您将创建一个名为C:\Users\MyUsername\Desktop\Folder111的文件夹。

使用Path.Combine()为您自动添加斜杠:

DirectoryInfo dir = new DirectoryInfo(
    Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "Folder111"));

丹尼尔的答案也可能适用。

答案 1 :(得分:1)

您要DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)参见:What's the difference between SpecialFolder.Desktop and SpecialFolder.DesktopDirectory?