c#, . getdirectories(字符串文件)检索目录问题
本文关键字:检索 问题 文件 getdirectories 字符串 | 更新日期: 2023-09-27 18:16:48
我正在尝试检索我传入的路径的子目录。它处理它并给我一半的子目录,但对于另一半,它在调试时返回"?"。我不知道是什么原因造成的以下是我的文件:
string root = @"C:'Users'Documents'Meta Consumer";
string[] subDir = Directory.GetDirectories(root);
调试时:
1:(好)
2:(好)
3:(好)
. . . .
?
?:(15 is here)
. . . .
?:
我不确定整个目标,如果您打算专门搜索特定项目或打算操作目录。我看到的一件事是你没有为你的数组指定任何额外的搜索。我相信这可以通过深度嵌套或权限问题来阻止。
解决方案一:确保您具有在指定目录内执行递归搜索的有效权限。
解决方案二:您可以尝试对所有带有通配符的项目进行搜索,然后强制它搜索所有目录。这可能有助于解决您可能遇到的潜在的深度嵌套问题。
分辨率三:尝试下面的代码;看看是否能解决问题。
string root = Environment.GetFolderPath(Environment.SpecialFolder.Documents);
string[] subDir = Directories.GetDirectories(root, "*", SearchOption.AllDirectories);
foreach (string s in subDir)
{
Console.WriteLine(s);
}
看看它是否返回了正确的信息。有文件夹位于你的库,虽然被认为是公共的用户仍然锁定,因为它们驻留在用户配置文件,所以权限将是一个很好的检查。
以管理员身份运行Visual Studio也将有助于您的故障排除。此外,您应该看看是否有任何Inner Exceptions
,以帮助识别它。