📜  Java.io.LineNumberReader类(1)

📅  最后修改于: 2023-12-03 14:42:20.694000             🧑  作者: Mango

Java.io.LineNumberReader类

简介

Java.io.LineNumberReader是Java I/O库中的一个类,它用于读取文本文件,并记录每个读取的行号。

构造函数

Java.io.LineNumberReader类的构造函数如下:

public LineNumberReader(Reader reader);
public LineNumberReader(Reader reader, int size);

其中,第一个构造函数创建一个新的LineNumberReader对象,用于从指定的Reader对象中读取输入流。第二个构造函数还指定了输入缓冲区的大小。

用法

Java.io.LineNumberReader类有以下常用方法:

1. readLine()

public String readLine() throws IOException

此方法从输入流中读取一行,并返回读取到的字符串。如果没有更多的数据,则返回null。如果出现I/O错误,则抛出IOException。

2. getLineNumber()

public int getLineNumber()

此方法返回当前行号。行号从1开始计数,并且每读取一行就会增加。

3. setLineNumber()

public void setLineNumber(int lineNumber)

此方法设置当前的行号。如果将行号设置为负数,则会抛出IllegalArgumentException。

例子

以下是一个使用Java.io.LineNumberReader类的示例,它将记录文件中每行的行号,并输出每行的内容:

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

public class LineNumberReaderExample {
    public static void main(String[] args) throws IOException {
        FileReader fileReader = new FileReader("example.txt");
        LineNumberReader reader = new LineNumberReader(fileReader);

        String line = null;
        while ((line = reader.readLine()) != null) {
            System.out.println("Line " + reader.getLineNumber() + ": " + line);
        }

        reader.close();
        fileReader.close();
    }
}
总结

Java.io.LineNumberReader类是一个非常有用的类,它可帮助程序员轻松读取和记录文本文件。通过使用它的readLine()方法,我们可以轻松地逐行读取文件,并通过getLineNumber()方法获取每行的行号。