public class LineNumberReader extends BufferedReader
setLineNumber(int)
和getLineNumber()
用于分别设置和获得当前行号。
默认情况下,线路编号从0开始。随着数据的读取,每个line terminator的数字递增,可以通过呼叫setLineNumber(int)进行更改。 但是请注意, setLineNumber(int)实际上并不改变流中的当前位置; 它只会更改getLineNumber()将返回的值 。
的线被认为是terminated一个换行(“\ n”)中的任何一个,回车(“\ r”),或回车一个换行符紧跟。
Constructor and Description |
---|
LineNumberReader(Reader in)
使用默认的输入缓冲区大小创建一个新的行号阅读器。
|
LineNumberReader(Reader in, int sz)
创建一个新的行号阅读器,将字符读入给定大小的缓冲区。
|
Modifier and Type | Method and Description |
---|---|
int |
getLineNumber()
获取当前行号。
|
void |
mark(int readAheadLimit)
标记流中的当前位置。
|
int |
read()
读一个字符
|
int |
read(char[] cbuf, int off, int len)
将字符读入数组的一部分。
|
String |
readLine()
读一行文字。
|
void |
reset()
将流重新设置为最近的标记。
|
void |
setLineNumber(int lineNumber)
设置当前行号。
|
long |
skip(long n)
跳过字符
|
close, lines, markSupported, ready
public LineNumberReader(Reader in)
in
- 提供底层流的Reader对象
public LineNumberReader(Reader in, int sz)
in
- 提供底层流的Reader对象
sz
- 指定缓冲区大小的int
public void setLineNumber(int lineNumber)
lineNumber
- 指定行号的int
getLineNumber()
public int getLineNumber()
setLineNumber(int)
public int read() throws IOException
read
在类别
BufferedReader
IOException
- 如果发生I / O错误
public int read(char[] cbuf, int off, int len) throws IOException
read
在
BufferedReader
cbuf
- 目的缓冲区
off
- 开始存储字符的偏移量
len
- 要读取的最大字符数
IOException
- 如果发生I / O错误
public String readLine() throws IOException
readLine
在类别
BufferedReader
IOException
- 如果发生I / O错误
Files.readAllLines(java.nio.file.Path, java.nio.charset.Charset)
public long skip(long n) throws IOException
skip
在类别
BufferedReader
n
- 要跳过的字符数
IOException
- 如果发生I / O错误
IllegalArgumentException
- 如果
n为负数
public void mark(int readAheadLimit) throws IOException
mark
在类别
BufferedReader
readAheadLimit
- 限制仍然保留标记时可能读取的字符数。
读了这么多字符后,尝试重置流可能会失败。
IOException
- 如果发生I / O错误
public void reset() throws IOException
reset
在类别
BufferedReader
IOException
- 如果流未被标记,或标记已被无效