我目前有一个Java程序,它在我的Windows机器上的目录中循环数百个文件,在每个文件中搜索一个字符串。
我是这样做的,我用200多个文件名创建一个数组,程序执行没有问题。
我想知道它是否可能
一个。使用外卡,所以每次我更改我正在搜索的文件时,我不必在我的代码中将200多个文件列为数组。
或
B只搜索特定文件夹中的所有文件。
下面是我的代码,其中inputFile是文件数组。
try {
br = new BufferedReader(new FileReader(inputFile[i]));
try {
while((line = br.readLine()) != null)
{
countLine++;
//System.out.println(line);
String[] words = line.split(" ");
for (String word : words) {
if (word.equals(inputSearch)) {
count++;
countBuffer++;
}
}
if(countBuffer > 0)
{
countBuffer = 0;
lineNumber += countLine + ",";
}
}
br.close();
答案 0 :(得分:0)
答案 1 :(得分:0)
方法listFiles()
列出了给定目录中的所有File
。
File directory = new File(-Path to directory-);
File[] files = directory.listFiles();
然后你可以迭代那个。但请注意,listFiles()
还会在读取文件之前提取您需要检查的所有子文件夹。