Java.io.ByteArrayInputStream.markSupported() Method
Advertisements
Description
The java.io.ByteArrayInputStream.markSupported() method returns true if the input stream supports mark() and reset() methods invocations. For ByteArrayInputStream the method always returns true.
Declaration
Following is the declaration for java.io.ByteArrayInputStream.markSupported() method:
public boolean markSupported()
Parameters
NA
Return Value
This method returns true for ByteArrayInputStream
Exception
NA
Example
The following example shows the usage of java.io.ByteArrayInputStream.markSupported() method.
package com.tutorialspoint;
import java.io.ByteArrayInputStream;
import java.io.IOException;
public class ByteArratInputStreamDemo {
public static void main(String[] args) throws IOException {
byte[] buf = {65, 66, 67, 68, 69};
ByteArrayInputStream bais = null;
try{
// create new byte array input stream
bais = new ByteArrayInputStream(buf);
// test support for mark() and reset() methods invocation
boolean isMarkSupported = bais.markSupported();
System.out.println("Is mark supported : "+isMarkSupported);
System.out.println("Following is the proof:");
// print bytes
System.out.println("Byte read "+ bais.read());
System.out.println("Byte read "+ bais.read());
System.out.println("Byte read "+ bais.read());
System.out.println("Mark() invocation");
// mark() invocation;
bais.mark(0);
System.out.println("Byte read "+ bais.read());
System.out.println("Byte read "+ bais.read());
System.out.println("Reset() invocation");
// reset() invocation
bais.reset();
System.out.println("Byte read "+ bais.read());
System.out.println("Byte read "+ bais.read());
}catch(Exception e){
// if I/O error occurs
e.printStackTrace();
}finally{
if(bais!=null)
bais.close();
}
}
}
Let us compile and run the above program, this will produce the following result:
Is mark supported : true Following is the proof: Byte read 65 Byte read 66 Byte read 67 Mark() invocation Byte read 68 Byte read 69 Reset() invocation Byte read 68 Byte read 69