PushbackInputStream read() method in Java with Examples Last Updated : 05 Jun, 2020 Summarize Comments Improve Suggest changes Share Like Article Like Report The read() method of PushbackInputStream class in Java is of two types: The read() method of PushbackInputStream class in Java is used to read the next byte of data from the input stream. This method returns the read byte from the input stream in the form of an integer. Syntax: public int read() throws IOException Overrides: This method overrides the read() method of FilterInputStream class. Parameters: This method does not accept any parameter. Return value: This method returns the next byte of the stream. It returns -1 if the stream is ended. Exceptions: This method throws IOException if the input stream is closed by calling the close() method of the same class or an I/O error occurs. Below programs illustrate read() method of PushbackInputStream class in IO package: Program 1: Java // Java program to illustrate // PushbackInputStream read() 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++) { System.out.println( "Char : " + (char)pushbackInputStr.read()); } } } Output: Char : G Char : E Char : E Char : K Char : S Program 2: Java // Java program to illustrate // PushbackInputStream read() 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', 'F', 'O', 'R', '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++) { System.out.println( "Char : " + (char)pushbackInputStr.read()); } } } Output: Char : G Char : E Char : E Char : K Char : S Char : F Char : O Char : R Char : G Char : E Char : E Char : K Char : S The read(byte[], int, int) method of PushbackInputStream class in Java is used to reads up to given bytes of data from the input stream into an array of bytes. This method does not read one character at a time, it reads several characters at one time. Syntax: public int read(byte[] b, int offset, int length) throws IOException Overrides: This method overrides the read() method of FilterInputStream class. Parameters: This method does not accept three parameters: b - It represents the byte array into which data is read. offset - It represents the starting index in the array. length - It represents the number of byte to be read. Return value: This method returns the total number of bytes read. It returns -1 if the stream is ended. Exceptions: NullPointerException - This method throws NullPointerException if byte array is null. IndexOutOfBoundsException - This method throws IndexOutOfBoundsException if offset is negative or length is negative or length is greater than the difference of length of array and offset. IOException - This method throws IOException if the input stream is closed by calling the close() method of the same class or an I/O error occurs. Below programs illustrate read(byte[], int, int) method of PushbackInputStream class in IO package: Program 1: Java // Java program to illustrate // PushbackInputStream // read(byte[], int, int) method import java.io.*; public class GFG { public static void main(String[] args) throws IOException { // Create buffer byte[] b = new byte[1024]; // 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); pushbackInputStr.read(b, 0, 4); for (int i = 0; i < 4; i++) { System.out.print((char)b[i]); } } } Output: GEEK Program 2: Java // Java program to illustrate // PushbackInputStream // read(byte[], int, int) method import java.io.*; public class GFG { public static void main(String[] args) throws IOException { // Create buffer byte[] b = new byte[1024]; // Create an array byte[] byteArray = new byte[] { 'G', 'E', 'E', 'K', 'S', 'F', 'O', 'R', 'G', 'E', 'E', 'K', 'S' }; // Create inputStream InputStream inputStr = new ByteArrayInputStream(byteArray); // Create object of // PushbackInputStream PushbackInputStream pushbackInputStr = new PushbackInputStream(inputStr); pushbackInputStr.read(b, 8, 5); for (int i = 8; i < 13; i++) { System.out.print((char)b[i]); } } } Output: GEEKS References: 1. https://docs.oracle.com/javase/10/docs/api/java/io/PushbackInputStream.html#read() 2. https://docs.oracle.com/javase/10/docs/api/java/io/PushbackInputStream.html#read(byte%5B%5D, int, int) Comment More infoAdvertise with us Next Article PushbackInputStream unread() method in Java with Examples P pp_pankaj Follow Improve Article Tags : Java Java-Functions Java-IO package Practice Tags : Java Similar Reads PushbackInputStream unread() method in Java with Examples The unread() method of PushbackInputStream class in Java is of three types: The unread(int b) method of PushbackInputStream class in Java is used to push back a byte by copying it to the front of the pushback buffer. After revoking this method, when the next byte is read it has the value equal to th 6 min read PushbackInputStream reset() method in Java with Examples The reset() method of PushbackInputStream class in Java is used to reset the steam to the position where mark() method was called. This method does nothing for PushbackInputStream. Syntax: public void reset() throws IOException Overrides: This method overrides the reset() method of FilterInputStream 2 min read PushbackInputStream skip() method in Java with Examples The skip(long n) method of PushbackInputStream class in Java is used to skip over and discards n bytes of data from this input stream. This method first skips over the bytes in the pushback buffer, and then calls the skip method of the main input stream. It returns the actual number of bytes skipped 2 min read PushbackInputStream mark() method in Java with Examples The mark() method of PushbackInputStream class in Java is used to mark the current position in the input stream. This method does nothing for PushbackInputStream. Syntax: public void mark(int readlimit) Overrides: This method overrides the mark() method of FilterInputStream class. Parameters: This m 2 min read ObjectInputStream read() method in Java with examples The read() method of the ObjectInputStream class in Java reads a byte of data. This method wont run if there is no data. Syntax: public int read() Parameters: This method does not accept any parameter. Return Value: This method returns the byte read, or -1 if the end of the stream is reached. Except 1 min read PushbackInputStream close() method in Java with Examples The close() method of PushbackInputStream class in Java is used to closes the input stream and it releases resources of system that are associated with the stream. After calling this method, further calling other method if this class will throw the IOException. Syntax: public void close() throws IOE 2 min read Like