有没有办法在不知道目录的情况下找到文件的目录?例如,我的计算机上有calc.exe 某处。有没有办法找到它安装在C:\ windows \ system32?
理想情况下,我希望能够找到其他地方安装的其他可执行文件,我只是好奇如何搜索文件名和扩展名,返回完整路径。
顺便说一下,我希望在.NET中做到这一点。
答案 0 :(得分:2)
只需搜索所有目录相当容易。问题是硬盘(以及较小程度上的固态磁盘)仍然是现代计算机中最慢的组件。
最好的起点是让用户指定一个应该搜索的目录。它很简单,效果很好。扫描所有C:\
或仅C:\Windows
的内容之间存在巨大差异。
然后,您必须决定如何扫描子目录。您想要水平还是垂直搜索?换句话说:当你在搜索中点击一个子目录时,你应该立即开始扫描该目录的内容,还是应该先扫描当前目录?如果当前目录同时包含同级目录和子目录,那么首先要扫描哪个目录?
最后,您必须决定要扫描的深度级别。如果在第10个子目录中找不到该文件,是否还值得查看第11个或第12个?
对于实际的代码示例:click