Home »
Java programming language
Java ByteArrayInputStream mark() Method with Example
ByteArrayInputStream Class mark() method: Here, we are going to learn about the mark() method of ByteArrayInputStream Class with its syntax and example.
Submitted by Preeti Jain, on March 02, 2020
ByteArrayInputStream Class mark() method
- mark() method is available in java.util package.
- mark() method is used to set the current mark position in the stream from where read or write can be reset.
- 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 may throw an exception at the time of seeking mark position.
IOException: This exception may throw while performing input/output operations.
Syntax:
public void mark(int read_from_here);
Parameter(s):
- int read_from_here – represents the mark position where reading or writing can start.
Return value:
The return type of the method is void, it returns nothing.
Example:
// Java program to demonstrate the example
// of void mark(int read_from_here) method of
// ByteArrayInputStream
import java.io.*;
public class MarkBAIS {
public static void main(String[] args) throws Exception {
byte[] by = {
97,
98,
98,
99
};
// Instantiates ByteArrayInputStream
ByteArrayInputStream byte_s = new ByteArrayInputStream(by);
// By using available() method is to
// return the no. of bytes to be left
// for reading
Integer n_byte = byte_s.available();
System.out.println("Left avail bytes = " + n_byte);
// Read character from the stream
char ch1 = (char) byte_s.read();
char ch2 = (char) byte_s.read();
char ch3 = (char) byte_s.read();
System.out.println("ch1: " + ch1);
System.out.println("ch2 : " + ch2);
System.out.println("byte_s.mark(5): ");
// By using mark() method isto
// set the limit the number of byte
// to be read
byte_s.mark(5);
System.out.println("ch3: " + ch3);
System.out.println("buff_str.reset(): ");
// reset stream by using reset()
byte_s.reset();
// Read from the stread
char ch4 = (char) byte_s.read();
char ch5 = (char) byte_s.read();
// Display character
System.out.println("ch4: " + ch4);
System.out.println("ch5: " + ch5);
byte_s.close();
}
}
Output
Left avail bytes = 4
ch1: a
ch2 : b
byte_s.mark(5):
ch3: b
buff_str.reset():
ch4: c
ch5: ?