编写文件查找器(java)

编写文件查找器(java),java,Java,我正在写一个应用程序,它将在计算机上搜索具有特殊文件扩展名的文件。(例如JPG)。输入数据:“D:”,“.JPG”输出:带有结果的txt文件(文件目录);我知道一个简单的递归算法,但可能有更好的smth。那么,请告诉我一个遍历文件目录的有效算法。我还想使用多线程来解决这个问题,以提高性能。但是我应该使用多少线程呢?如果我将1个线程用于1个目录-这将是愚蠢的。您命名的递归选项是唯一的方法,除非您想用文件系统弄脏您的手。我想你没有 关于线程性能,最好的选择是使线程的数量可配置,创建一些示例目录,并测

我正在写一个应用程序,它将在计算机上搜索具有特殊文件扩展名的文件。(例如JPG)。输入数据:“D:”,“.JPG”输出:带有结果的txt文件(文件目录);我知道一个简单的递归算法,但可能有更好的smth。那么,请告诉我一个遍历文件目录的有效算法。我还想使用多线程来解决这个问题,以提高性能。但是我应该使用多少线程呢?如果我将1个线程用于1个目录-这将是愚蠢的。

您命名的递归选项是唯一的方法,除非您想用文件系统弄脏您的手。我想你没有

关于线程性能,最好的选择是使线程的数量可配置,创建一些示例目录,并测量每个设置的性能


顺便说一下,大多数文件查找程序都会创建文件索引。他们会按计划扫描磁盘,并更新包含磁盘上文件和目录相关信息的文件。该文件的格式旨在方便搜索。此索引文件用于执行实际搜索。如果您计划对同一目录重复运行此搜索,您应该这样做。

OP希望查找文件,而不是索引文件。索引有它自己的缺点,对于这样一个小应用程序来说,这太过分了。我把最后一段作为旁注。也许这并不明显。如果你不想重新发明轮子,你可以用这个