System.IO.Directory.GetFiles()未检索C#中的任何文件
本文关键字:任何 文件 检索 Directory IO GetFiles System | 更新日期: 2023-09-27 18:21:06
我只是想检索某个目录中的所有文件。
if (System.IO.Directory.Exists(dir_path)) //this line passes
{
//The following files array is empty although there's clearly files
string[] files = System.IO.Directory.GetFiles(dir_path);
}
是否有一种方法可以在所有子目录上复制,并且在复制时所有文件仍在各自的子目录中?
根据您的注释"目录有两个非空子目录",Directory.GetFiles(string)
重载不会递归检查子目录,也不会拾取这些文件。
相反,尝试使用Directory.GetFiles(dir_path, "*", SearchOption.AllDirectories)
,它也会抓取子目录中的文件。
尝试以管理员身份运行Visual Studio。如果代码成功运行,则访问的文件夹可能存在一些访问权限问题。
我在尝试使用System.IO.Directory.GetFiles()
时遇到了同样的问题,并认为它会返回文件夹的所有即时内容。
但是,Directory.GetFiles()
仅返回FILES。这意味着将不返回子文件夹,只返回文件夹的所有直接文件。
如果您计划获取目录中的所有即时文件和文件夹,则必须使用Directory.GetFileSystemEntries()
!