PushbackInputStream
向輸入流新增功能,允許使用其unread()
方法推回讀取的位元組。有三個版本的unread()
方法。 一個讓推回一個位元組,另外兩個讓推回多個位元組。
import java.io.FileInputStream;
import java.io.PushbackInputStream;
public class Main {
public static void main(String[] args) {
String srcFile = "test.txt";
try (PushbackInputStream pis = new PushbackInputStream(new FileInputStream(srcFile))) {
byte byteData;
while ((byteData = (byte) pis.read()) != -1) {
System.out.print((char) byteData);
pis.unread(byteData);
// Reread the byte we unread
byteData = (byte) pis.read();
System.out.print((char) byteData);
}
} catch (Exception e2) {
e2.printStackTrace();
}
}
}
執行上面的範例程式碼,得到如下結果 -
YYiiiibbaaii..ccoomm BBuuffffeerreeddIInnppuuttSSttrreeaamm UUssggee..
TThhee LLiinnee 22....