Home » Java programming language

Java InputStream mark() Method with Example

InputStream Class mark() method: Here, we are going to learn about the mark() method of InputStream Class with its syntax and example.
Submitted by Preeti Jain, on April 03, 2020

InputStream Class mark() method

  • mark() method is available in java.io package.
  • mark() method is used to mark the present position in this InputStream and when we call to reset() method it reset the stream to the position set by the most recent call of mark() method.
  • mark() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.
  • mark() method does not throw an exception at the time of marking the stream.

Syntax:

    public void mark(int r_limit);

Parameter(s):

  • int r_limit – represents the maximum number of bytes that can be read before the mark gets invalid.

Return value:

The return type of the method is void, it returns nothing.

Example:

// Java program to demonstrate the example 
// of void mark(int r_limit) method
// of InputStream

import java.io.*;

public class MarkOfIS {
 public static void main(String[] args) throws Exception {
  InputStream is_stm = null;
  int val = 0;

  try {
   // Instantiates FileInputStream
   is_stm = new FileInputStream("D:\\includehelp.txt");

   // By using read() method isto 
   // read the character from is_stm
   char ch1 = (char) is_stm.read();
   char ch2 = (char) is_stm.read();

   System.out.println("ch1: " + ch1);
   System.out.println("ch2: " + ch2);

   // By using mark() method isto
   // set the current position in this
   // is_stm

   System.out.println("is_stm.mark(0): ");
   is_stm.mark(0);
   char ch3 = (char) is_stm.read();
   char ch4 = (char) is_stm.read();

   System.out.println("ch3: " + ch3);
   System.out.println("ch4: " + ch4);

   // By using reset() method isto
   // reset the stream to the position 
   // set by the call mark() method

   System.out.println("is_stm.reset(): ");
   is_stm.reset();
   char ch5 = (char) is_stm.read();
   char ch6 = (char) is_stm.read();

   System.out.println("ch3: " + ch5);
   System.out.println("ch4: " + ch6);
  } catch (Exception ex) {
   System.out.println("Reset Not Supported");

  } finally {
   // with the help of this block is to
   // free all necessary resources linked
   // with the stream
   if (is_stm != null) {
    is_stm.close();
   }
  }
 }
}

Output

ch1: J
ch2: A
is_stm.mark(0):
ch3: V
ch4: A
is_stm.reset():
Reset Not Supported



Comments and Discussions!

Load comments ↻






Copyright © 2024 www.includehelp.com. All rights reserved.