方法java.io.InputStream.mark()用于标记此输入流中的当前位置。该方法需要一个参数,即在标记位置无效之前可以读取的字节。
演示此的程序如下所示-
import java.io.FileInputStream; import java.io.InputStream; public class Demo { public static void main(String[] args) throws Exception { InputStream i = null; try { i = new FileInputStream("C://JavaProgram//data.txt"); System.out.println("Char : "+(char)i.read()); System.out.println("Char : "+(char)i.read()); System.out.println("Char : "+(char)i.read()); i.mark(0); System.out.println("Char : "+(char)i.read()); System.out.println("Char : "+(char)i.read()); if(i.markSupported()){ i.reset(); System.out.println("Char : "+(char)i.read()); System.out.println("Char : "+(char)i.read()); } } catch(Exception e) { e.printStackTrace(); } } }
上面程序的输出如下-
输出结果
Char : D Char : A Char : T Char : A