Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net System.IO.Directory.GetDirectories异常_.net_Filesystems_Directory Structure - Fatal编程技术网

.net System.IO.Directory.GetDirectories异常

.net System.IO.Directory.GetDirectories异常,.net,filesystems,directory-structure,.net,Filesystems,Directory Structure,这是我今天在做目录搜索时注意到的,可能会让一些人绊倒 我在我的Windows XP机器上发现 System.IO.Directory.GetDirectories(“C:\”)给了我17个文件夹 System.IO.Directory.GetDirectories(“C:”)给了我17个文件夹 System.IO.Directory.GetDirectories(“D:\”)给了我12个文件夹 System.IO.Directory.GetDirectories(“D:”)给了我0个文件夹 我试

这是我今天在做目录搜索时注意到的,可能会让一些人绊倒

我在我的Windows XP机器上发现

System.IO.Directory.GetDirectories(“C:\”)给了我17个文件夹

System.IO.Directory.GetDirectories(“C:”)给了我17个文件夹

System.IO.Directory.GetDirectories(“D:\”)给了我12个文件夹

System.IO.Directory.GetDirectories(“D:”)给了我0个文件夹


我试图找出我的搜索缺少我的D驱动器的原因。

我猜
GetDirectories(“D:”)
提供了D驱动器当前目录中的目录列表,而
GetDirectories(“D:\”)
提供了D驱动器根目录列表


如果您的D驱动器的根目录有12个目录,而当前目录在您的D驱动器上,并且其中没有目录,那么这些就是您应该期望的结果。

我猜
GetDirectories(“D:”)
会为您提供D驱动器当前目录中的目录列表,而
GetDirectories(“D:\”)
提供D驱动器根目录的列表


如果您的D驱动器的根目录有12个目录,而当前目录位于您的D驱动器上,但其中没有目录,则这些是您应该期望的结果。

驱动器D的当前目录是什么:


它不是根目录。

驱动器D:的当前目录是什么


它不是根目录。

Windows历史上提供了与DOS的向后兼容性,DOS将只包含驱动器号而没有目录的路径视为对驱动器“当前目录”的引用。但是,由于每个驱动器实际上没有一个当前目录(根据cmd.exe模拟),我猜测它不会返回任何内容,因为进程的当前目录位于C:驱动器上。尝试将Environment.CurrentDirectory设置为D:\然后查看是否得到相同的结果。

Windows以前提供了与DOS的向后兼容性,它将只包含驱动器号而不包含目录的路径视为对驱动器“当前目录”的引用。但是,由于每个驱动器实际上没有一个当前目录(根据cmd.exe模拟),我猜测它不会返回任何内容,因为进程的当前目录位于C:驱动器上。尝试将Environment.CurrentDirectory设置为D:\然后查看是否得到相同的结果。

Windows实际上没有每个驱动器的当前目录的概念。它由cmd.exe模拟以实现向后兼容性。Windows实际上没有每个驱动器的当前目录的概念。为了向后兼容,cmd.exe对其进行了模拟。好吧,归根结底是要弄清楚目录是什么。InternalGetFileDirectoryNames(字符串路径、字符串userPathOriginal、字符串搜索模式、bool includeDiles、bool includeDirs、SearchOption SearchOption)起作用。但我猜当前目录可能是正确的。我正在调试的应用程序位于D驱动器上的一个叶文件夹中。好吧,这要归结为找出哪个目录。InternalGetFileDirectoryNames(字符串路径、字符串userPathOriginal、字符串searchPattern、bool includeDirs、SearchOption SearchOption)起作用。但我猜当前目录可能是正确的。我正在调试的应用程序在D驱动器的一个叶子文件夹中。很好的解释。这很合适。但如果共享和本地磁盘处理之间有一致性就好了。很好的解释。这很合适。但是如果共享和本地磁盘处理之间有一致性就好了。