Java 基础
基础教程 > IO流 > InputStream类
http://www.51gjie.com/java/1151.html
public void mark(int readlimit) 参数 readlimit - 可读取的最大字节数。 返回 不返回任何值 异常 IOException:I/O 错误 实例 public static void main(String[] args) throws Exception { InputStream is = null; try { is = new FileInputStream("C://51gjie.txt"); System.out.println("Char : " + (char) is.read()); is.mark(0);//设置流位置重新为0 System.out.println("Char : " + (char) is.read()); if(is.markSupported()) { is.reset(); System.out.println("Char : " + (char) is.read()); } } catch(Exception e) {} finally { if(is != null) is.close(); } } 1. InputStream的mark方法不执行任何操作,只是标记输入流的位置,如果要重新定位到这个位置,需要调用reset()方法才行。 2. 如果方法markSupported返回true,则流将以某种方式记住在调用mark之后读取的所有字节,并准备在每次调用方法reset时再次提供相同的字节。 但是,如果在调用复位之前从流中读取了超过readlimit个字节的数据,则该流根本不需要记住任何数据。