Java.io.PushbackInputStream.mark() Method



Description

The java.io.PushbackInputStream.mark(int readlimit) method marks the current position in this input stream,but for PushbackInputStream it does nothing.

Declaration

Following is the declaration for java.io.PushbackInputStream.mark() method.

public void mark(int readlimit)

Parameters

readlimit − The maximum limit of bytes that can be read before the mark position becomes invalid.

Return Value

This method does not return a value.

Exception

NA

Example

The following example shows the usage of java.io.PushbackInputStream.mark() method.

package com.tutorialspoint;

import java.io.*;

public class PushbackInputStreamDemo {
   public static void main(String[] args) {
      
      // declare a buffer and initialize its size:
      byte[] arrByte = new byte[1024];

      // create an array for our message
      byte[] byteArray = new byte[]{'H', 'e', 'l', 'l', 'o'};

      // create object of PushbackInputStream class for specified stream
      InputStream is = new ByteArrayInputStream(byteArray);
      PushbackInputStream pis = new PushbackInputStream(is);

      try {
         // read from the buffer one character at a time
         for (int i = 0; i < byteArray.length; i++) {

            // read a char into our array
            arrByte[i] = (byte) pis.read();

            // display the read byte
            System.out.print((char) arrByte[i]);
         }

         // mark this position, but it does nothing for this class
         pis.mark(5);
      } catch (Exception ex) {
         ex.printStackTrace();
      }
   }
}

Let us compile and run the above program, this will produce the following result −

Hello
java_io_pushbackinputstream.htm
Advertisements