繁体   English   中英

如何使用 java 在文本文件中搜索特定段落

[英]how to search for a particular paragraph in a text file using java

我有一个包含很多内容的文本文件。 我找到了如何在文本文件中搜索单词的方法。 但是我有一个地址需要查找,你们都知道一个地址有多行(可以认为是一个段落),问题就来了。

如何将整个地址作为搜索输入? 当我只给出一行地址时,我能够在文本文件中找到该字符串,因为我使用了逐行读取的 nextLine()。 有没有一种方法可以将整个地址作为输入并在文本文件中搜索它。

您可以将整个文件读入一个字符串,然后尝试在该文件字符串中找到您的多行地址字符串。 这是高效的,因为您不必执行许多文件 I/O 操作,并且它会起作用,因为String.indexOf(String)可以找到其中包含换行符的字符串。

是的,您可以尝试@Oleksi 所说的。但是我建议使用StringBuffer而不是String

像下面这样的东西应该工作......

BufferedReader br = new BufferedReader(new FileReader(new File("D:/Shashank/random.txt")));
        StringBuffer sb = new StringBuffer("");
        String address =  "line1\nline2\nline3";

        while(br.ready())
        {
            sb.append(br.readLine());
            sb.append("\n");
        }
        if(sb.indexOf(address)>=0)
        {
            System.out.println("Address found");
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM