【发布时间】:2012-12-06 02:36:11
【问题描述】:
我找不到用 Java(或 Groovy)编写以下代码的功能
reader.mark(); //(1)
reader.read(); //reads 'a'
reader.mark(); //(2)
reader.read(); //reads 'b'
reader.reset(); //back to (2)
reader.read(); //reads 'b'
reader.reset(); //back to (1)
reader.read(); //reads 'a'
reader.read(); //reads 'b'
Reader.mark(int) 是一个不错的方法,但它不堆叠标记,它只保存最近的标记..
来自 Java 库的任何支持还是我一个人?
【问题讨论】:
-
我相信
mark开始在内部缓存数据,并在调用 reset 时重放它。这就是为什么你必须在标记被丢弃之前设置缓冲区大小 -
我需要任何支持这种简单操作的方法或
Reader实现。 C语言有ftell和fseek。 -
你是一个人,但我喜欢这个主意。听起来类似于 Stack
标签: java groovy bufferedreader