在所有可能的文件夹中查找文件?
我想知道如何使用 c# 在所有可能的目录中查找特定文件(例如cheese.exe)? 然后存储它找到的目录的路径?
I was wondering how I could use c# to find a specific file (example cheese.exe) within all possible directories? And then store the path to the directory it found it in?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
此代码片段检索计算机上所有逻辑驱动器的列表,然后在驱动器上的所有文件夹中搜索与文件名“Cheese.exe”匹配的文件。 循环完成后,列表“文件”包含
This code fragment retrieves a list of all logical drives on the machine and then searches all folders on the drive for files that match the filename "Cheese.exe". Once the loop has completed, the List "files" contains the
如果您想更多地了解搜索多个目录的机制,谷歌搜索显示这篇文章 。 它有一个很好的解决方案,并解释了您自己递归目录的情况。 您可以更改 Directory.GetFiles 中的文件规范以匹配您的搜索字符串,并可能按原样使用它。
不幸的是,该链接现在已失效,但简而言之,解决方案基本上可以归结为:
注意 filespec(第二个参数)接受通配符,因此您还可以搜索“.exe”甚至“.* " 递归列出所有文件。
If you want to know a little more about the mechanics of searching multiple directories, Googling revealed this post. It has a good solution and explanation of recursing through directories yourself. You can change the filespec in
Directory.GetFiles
to match your search string and probably use it as is.The link is unfortunately dead now, but in a nutshell the solution basically boils down to:
Note the filespec (second parameter) accepts wildcards, so you can also search for ".exe" or even ".*" to list all files recursively.