启用FileReader mark()/ reset()

时间:2014-04-07 02:59:23

标签: java

我正在尝试使用带有FileReader的mark()和reset(),但是当我看到是否支持mark()时,我得到了错误。无论如何要启用它吗?

2 个答案:

答案 0 :(得分:0)

将其包裹在具有足够缓冲区大小的BufferedReader中以满足您的需求。

答案 1 :(得分:0)

试试这个:

         // create new buffered reader
         BufferedReader br = new BufferedReader(new FileReader("file.txt"));

         // reads and prints BufferedReader
         System.out.println((char)br.read());
         System.out.println((char)br.read());

         // mark invoked at this position
         br.mark(26);
         System.out.println("mark() invoked");
         System.out.println((char)br.read());
         System.out.println((char)br.read());

         // reset() repositioned the stream to the mark
         br.reset();
         System.out.println("reset() invoked");
         System.out.println((char)br.read());
         System.out.println((char)br.read());