如何从文本文件中搜索关键字/特定单词?

时间:2014-03-05 19:24:51

标签: java search

如何从文件中搜索特定单词。就像我们有一个文本文件和文件一样,文本是逐行排列的......

苹果很甜蜜。

汽车的颜色是红色。

天空是蓝色的..

现在用户想搜索汽车或红色...... 并通过文本框输入,以便我们如何从文件中搜索匹配输入文本的文件并显示重新输入。 输入字可能在文档中超过1次,然后重新显示它还显示它在文件中出现的次数。  那我们怎么能实现这个......

2 个答案:

答案 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,则上面的行会告诉您,如果是,您将获得此字符串中单词的起始位置。