-
Bug
-
Resolution: Not an Issue
-
P3
-
None
-
1.3.0
-
sparc
-
solaris_2.5
Name: apC94908 Date: 02/25/2000
Spec for java.io.Reader says:
---------------
public void mark(int readAheadLimit)
throws IOException
Mark the present position in the stream. Subsequent calls to reset() will attempt to
reposition the stream to this point. Not all character-input streams support the mark()
operation.
Parameters:
readAheadLimit - Limit on the number of characters that may be read while
still preserving the mark. After reading this many characters, attempting to reset
the stream may fail.
Throws:
IOException - If the stream does not support mark(), or if some other I/O error
_______________________
occurs
---------------
But it throws IOException on mark operation even if underlying
InputStream support mark - ByteArrayInputStream, for example
----- Test.java
import java.io.*;
public class Test {
public static void main(String[] args) throws IOException {
byte[] ba = new byte[10];
// InputStreamReader inherits mark from Reader
InputStreamReader isr = new InputStreamReader(new
ByteArrayInputStream(ba));
isr.mark(5);
}
}
----- Output
Exception in thread "main" java.io.IOException: mark() not supported
at java.io.Reader.mark(Reader.java:194)
at Test.main(Test.java:8)
-----
======================================================================