从文本文件中读取行

时间:2017-01-01 20:18:42

标签: java file-io

我只是想从文本文件中读取一些特定的行而不是所有的行。 我尝试了以下代码:

public class BufferedReaderDemo {

    public static void main(String[] args) throws IOException {

        FileReader fr = new FileReader("Demo.txt");
        BufferedReader br = new BufferedReader(fr);
        String line = br.readLine();

        while(line!=null)
        {
            System.out.println(line);
            line = br.readLine();
        }

        br.close();
    }
}

使用此代码,我可以获得所有行。但我想在控制台中打印一些特定的2-3行,以“namespace”开头,以“Console”结束。

我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:1)

你别无选择,如果你想知道一行是否包含某些特定的词,你必须阅读它。

如果只想打印这些线条,可以在打印前添加条件。

String line = br.readLine();

while(line!=null){
    if (line.startsWith("namespace") && line.endsWith("Console")){
       System.out.println(line);
    }
    line = br.readLine();
}

答案 1 :(得分:0)

使用String.startsWithString.endsWith

while(line!=null)
{
    if(line.startsWith("namespace") && line.endsWith("Console")) {
        System.out.println(line);
    }
    line = br.readLine();
}