我只是想从文本文件中读取一些特定的行而不是所有的行。 我尝试了以下代码:
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”结束。
我怎样才能做到这一点?
答案 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.startsWith
和String.endsWith
:
while(line!=null)
{
if(line.startsWith("namespace") && line.endsWith("Console")) {
System.out.println(line);
}
line = br.readLine();
}