Java IO Tutorial - Java ByteArrayInputStream.mark(int readAheadLimit)








Syntax

ByteArrayInputStream.mark(int readAheadLimit) has the following syntax.

public void mark(int readAheadLimit)

Example

In the following code shows how to use ByteArrayInputStream.mark(int readAheadLimit) method.

/*from w  ww .j  a v a 2  s  . c  om*/
import java.io.ByteArrayInputStream;
import java.io.IOException;

public class Main {
  public static void main(String[] args) throws IOException {

    byte[] buf = { 65, 66, 67, 68, 69 };

    // create new byte array input stream
    ByteArrayInputStream bais = new ByteArrayInputStream(buf);

    // print bytes
    System.out.println(bais.read());
    System.out.println(bais.read());
    System.out.println(bais.read());

    System.out.println("Mark() invocation");

    // mark() invocation;
    bais.mark(0);
    System.out.println(bais.read());
    System.out.println(bais.read());

    System.out.println("Reset() invocation");

    // reset() invocation
    bais.reset();
    System.out.println(bais.read());
    System.out.println(bais.read());

  }
}

The code above generates the following result.