java:IO流(LineNumberReader)

版权声明:本文为博主原创文章,未经博主允许不得转载 https://blog.csdn.net/qq_24644517/article/details/83892694

* LineNumberReader是BufferedReader的子类, 具有相同的功能, 并且可以统计行号
    * 调用getLineNumber()方法可以获取当前行号
    * 调用setLineNumber()方法可以设置当前行号

import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.LineNumberReader;

public class Demo5_LineNumberReader {

	public static void main(String[] args) throws IOException {
		LineNumberReader lnr=new LineNumberReader(new FileReader("ooo.txt"));
		String line;
		while((line=lnr.readLine())!=null) {
			System.out.println(lnr.getLineNumber()+":"+line);
		}

	}

}

因为LineNumberReader类中定义的一个变量lineNumber,而readLine每调用一次,lineNumber++一次,所以获取行数的时候,会自增。

源码:

LineNumberReader类中源码设置行数的方法:

LineNumberReader类中源码获取行数的方法:

猜你喜欢

转载自blog.csdn.net/qq_24644517/article/details/83892694