我的目录就像D://../../ 在这个文件夹中有很多文件夹,在这些文件夹中有许多属性文件* .properties。我想在该D目录中的所有属性文件中搜索特定文本。如何在java中执行此操作?
我试过这个
File f = new File( "D:/Code" );
File[] matchingFiles = f.listFiles( new FilenameFilter()
{
public boolean accept( File dir,
String name )
{
return name.endsWith( ".properties" );
}
} );
但它只在D:/ Code /中搜索,而不是在子文件夹中搜索。
答案 0 :(得分:0)
您可以使用Apache的FileUtils.listFiles
来遍历文件(而不是文件的listFiles方法,就像您在扩展问题中所做的那样):
https://commons.apache.org/proper/commons-io/javadocs/api-2.5/org/apache/commons/io/FileUtils.html
您定义的IOFileFilter只接受*.properties
个文件。拥有这些文件的列表,您可以使用例如FileUtils.readLines
并查找字符串。