2013-08-01 62 views
0

我创建在Java程序,在所有目录中的文件搜索词,并列出它们存储在一个ArrayList值。我曾尝试使用findWithinhorizo​​n函数,但它似乎只检查一个单词,不能接受arraylist作为参数。 这是要我试图做的事: 有包含值表示(字词,字词2,WORD3,word4)一个数组列表。我想在我指定的目录及其子目录中搜索这些单词的所有文件,并列出所有文件名以及包含这些单词的路径。寻找通过目录中的所有文件和子目录

例如:它从数组列表中获取第一个值,即word1在我指定的目录(及其子目录)中查找包含word1的文件并列出所有文件。那么它会从数组列表word2的第二个字在目录中搜索并列出所有文件等。

任何帮助表示赞赏。 谢谢。

+3

你能告诉我们你已经有(代码)吗? – Tala

+0

你想搜索文件内容中的文字还是文件名? – f1sh

回答

0

列出目录中的所有文件。

'公共无效listFilesAndFilesSubDirectories(字符串目录名){

File directory = new File(directoryName); 

    //get all the files from a directory 
    File[] fList = directory.listFiles(); 

    for (File file : fList){ 
     if (file.isFile()){ 
      System.out.println(file.getAbsolutePath()); 
     } else if (file.isDirectory()){ 
      listFilesAndFilesSubDirectories(file.getAbsolutePath()); 
     } 
    } 
}` 

通过你的文件中读取每一个列表现在循环。现在迭代包含单词的列表,检查每个单词。如果找到该单词,请在另一个列表中添加文件名。

看到你迭代在外环的文件和文件循环内的字。

相关问题