有没有一种快速的方法可以从提供的根目录开始将每个文件(您具有读取权限)的完全限定路径加载到 a 中string[]
?
我看到了System.IO.Directory.GetFiles
,但是您必须在允许输入之前提供过滤器SearchOption.AllDirectories
,所以我尝试了:
string[] directoryList = Directory.GetFiles(RootPath, "*.*",
SearchOption.AllDirectories);
RootPath
我的有效根目录在哪里。这似乎工作正常,除了当它指向一个 29GB 的大目录/文件结构和几十万个文件时,它将我的 windows 窗体应用程序挂起很长时间。
所以我考虑通过 a 对其进行线程化,BackgroundWorker
这样我的 GUI 就不会出现锁定,但我不确定如何报告类似这样的事情的进度 aProgressBar
因为它只是一个正在加载的语句,我已经没有关于预先文件总数的信息,或者它已经处理的数量等。