El método mark() de la clase PushbackInputStream en Java se usa para marcar la posición actual en el flujo de entrada. Este método no hace nada por PushbackInputStream.
Sintaxis:
public void mark(int readlimit)
Anulaciones: este método anula el método mark() de la clase FilterInputStream .
Parámetros: este método acepta el límite de lectura de un solo parámetro que representa el límite máximo de bytes que se pueden leer antes de que la posición de la marca se vuelva inválida.
Valor devuelto : este método no devuelve ningún valor.
Excepciones: este método no arroja ninguna excepción.
Los siguientes programas ilustran el método mark() de la clase PushbackInputStream en el paquete IO:
Programa 1:
Java
// Java program to illustrate // PushbackInputStream mark() method import java.io.*; public class GFG { public static void main(String[] args) throws IOException { // Create an array byte[] byteArray = new byte[] { 'G', 'E', 'E', 'K', 'S' }; // Create inputStream InputStream inputStr = new ByteArrayInputStream(byteArray); // Create object of // PushbackInputStream PushbackInputStream pushbackInputStr = new PushbackInputStream(inputStr); for (int i = 0; i < byteArray.length; i++) { // Read the character System.out.print( (char)pushbackInputStr.read()); } // Revoke mark() but it does nothing pushbackInputStr.mark(5); } }
GEEKS
Programa 2:
Java
// Java program to illustrate // PushbackInputStream mark() method import java.io.*; public class GFG { public static void main(String[] args) throws IOException { // Create an array byte[] byteArray = new byte[] { 'H', 'E', 'L', 'L', 'O' }; // Create inputStream InputStream inputStr = new ByteArrayInputStream(byteArray); // Create object of // PushbackInputStream PushbackInputStream pushbackInputStr = new PushbackInputStream(inputStr); // Revoke mark() pushbackInputStr.mark(1); for (int i = 0; i < byteArray.length; i++) { // Read the character System.out.print( (char)pushbackInputStr.read()); } } }
HELLO
Referencias: https://docs.oracle.com/javase/10/docs/api/java/io/PushbackInputStream.html#mark(int)