【发布时间】:2026-02-04 11:50:01
【问题描述】:
有没有办法在 windows 中找到特定的文件路径。例如说我想在我的本地找到putty.exe 的位置,有什么办法可以得到完整的文件路径?
我使用 apache commons-io 实用程序尝试了以下代码,但是由于本地文件很多,因此花费了很多时间。
File dir = new File("C:\\");
String[] extensions = new String[]{"exe"};
IOFileFilter filter = new SuffixFileFilter(extensions, IOCase.INSENSITIVE);
List<File> fileList = (List<File>) FileUtils.listFiles(dir, filter, DirectoryFileFilter.DIRECTORY);
System.out.println("file list size "+fileList.size());
for (File file : fileList) {
if (file.getName().toLowerCase().contains("putty")) {
System.out.println(file.getPath());
}
}
还有其他更快的方法吗?
编辑我特别想找到putty.exe。
【问题讨论】:
-
出于什么目的?如果它在 PATH 中,它将执行,如果不是,则必须查看整个磁盘。
-
我必须创建一个逻辑来在本地运行 exe,但我不知道文件的位置。对于不同的用户,路径可能不同。这就是为什么我需要找到文件路径然后运行它。
-
这就是我的观点。你不需要知道它是否在 PATH 上。
-
@EJP 它不在 PATH 上。
-
在这种情况下,您应该将 Putty 与您的程序一起提供以便您知道在哪里可以找到它,或者将其作为先决条件并在您的用户之间共享一个约定。我认为最好的约定是每个用户都将 Putty 添加到 PATH 中。