PushbackInputStream向輸入流添加功能,允許我們使用其unread()方法推回讀取的字節(jié)。
有三個(gè)版本的unread()方法。一個(gè)讓我們推回一個(gè)字節(jié),另外兩個(gè)讓我們推回多個(gè)字節(jié)。
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(); } } }
上面的代碼生成以下結(jié)果。
更多建議: