//eg.
//reader is a BufferedReader
reader.mark(50);//要求在50个字符之内,这个mark应该保持有效,系统会保证buffer至少可以存储50个字符
int a = reader.read();//读了一个字符
int b = reader.read();//又读了一个字符
//做了某些处理,发现需要再读一次
reader.reset();
reader.read();//读到的字符和a相同
reader.read();//读到的字符和b相同
a.txt 内容为>>:abcdefghijklmnopqrstuvwxyz
import java.io.*;
public class Test2{
public static void main(String[] args){
try{
BufferedInputStream bis=new BufferedInputStream(new FileInputStream("d:/我的文档/桌面/java练习/IO/a.txt"));
System.out.println((char)bis.read());
System.out.println((char)bis.read());
bis.mark(6);//6.0中不管读多少mark仍然有效
System.out.println((char)bis.read());
System.out.println((char)bis.read());
bis.reset();
System.out.println((char)bis.read());
System.out.println((char)bis.read());
}catch(IOException e){
e.printStackTrace();
}
}
}
6.0下测试结果为:
a
b
c
d
c
d