如何从文件中搜索特定单词。就像我们有一个文本文件和文件一样,文本是逐行排列的......
苹果很甜蜜。
汽车的颜色是红色。
天空是蓝色的..
现在用户想搜索汽车或红色...... 并通过文本框输入,以便我们如何从文件中搜索匹配输入文本的文件并显示重新输入。 输入字可能在文档中超过1次,然后重新显示它还显示它在文件中出现的次数。 那我们怎么能实现这个......
答案 0 :(得分:0)
您有一个逐行读取文件的示例:
https://stackoverflow.com/a/22074145/3315914
您只需要更换几行:
public static ArrayList<String> searchInFile(String word) {
ArrayList<String> result = new ArrayList<String>();
FileReader fileReader = null;
try {
fileReader = new FileReader(new File("input.txt"));
} catch (FileNotFoundException e1) {
System.err.println("File input.txt not found!");
e1.printStackTrace();
}
BufferedReader br = new BufferedReader(file);
String line;
try {
while ((line = br.readLine()) != null) {
if (line.contains(word)) {
result.Add(word);
}
}
} catch (IOException e) {
System.err.println("Error when processing the file!");
e.printStackTrace();
} finally {
if (br != null) {
try {
br.close();
} catch (IOException e) {
System.err.println("Unexpected error");
e.printStackTrace();
}
}
}
return result;
}
答案 1 :(得分:0)
这是一个可以应用的简单逻辑
加载文件
迭代直到结束
迭代每一行,调用lineString.indexOf(“searchKeyword”)
如果出现searchKeyword,则上面的行会告诉您,如果是,您将获得此字符串中单词的起始位置。