📅  最后修改于: 2023-12-03 15:31:55.206000             🧑  作者: Mango
PushbackReader
是Java中I/O库中提供的类之一,用来将一个Reader对象转化为一个可以退回字符的Reader对象。
PushbackReader
类提供了许多读字符的方法,其中就包括了read(char, int, int)
方法。
read(char, int, int)
方法的作用是从输入流中读取数据到指定的字符数组中,并且从指定的字符数组中的索引开始,在指定长度内读取数据。
public int read(char[] cbuf, int off, int len) throws IOException
参数:
cbuf
:字符数组,用于保存读取的数据。off
:从字符数组的哪个位置开始保存读取到的数据。len
:读取的最大字符数。返回值:返回读取的字符数,如果已经到达输入流的末尾,则返回-1。
import java.io.FileReader;
import java.io.PushbackReader;
public class PushbackReaderExample {
public static void main(String[] args) throws Exception {
FileReader fileReader = new FileReader("test.txt");
PushbackReader pushbackReader = new PushbackReader(fileReader);
char[] buffer = new char[10];
int readCount = pushbackReader.read(buffer, 0, 10);
while (readCount != -1) {
for (int i = 0; i < readCount; i++) {
System.out.print(buffer[i]);
}
readCount = pushbackReader.read(buffer, 0, 10);
}
pushbackReader.close();
}
}
以上示例代码中,我们通过FileReader
类创建了一个文件输入流,然后又通过PushbackReader
类将其转化为一个带有退回字符功能的流。
使用read(char, int, int)
方法从输入流中读取了10个字符,保存到buffer
数组中,并打印出来。
之后通过一个循环,一次读取10个字符,并将其打印出来,直到读到了输入流的末尾。
最后,记得关闭流。