Open In App

PushbackReader read(char, int, int) method in Java with Examples

Last Updated : 29 Apr, 2019
Comments
Improve
Suggest changes
Like Article
Like
Report
The read(char[], int, int) method of PushbackReader Class in Java is used to read the specified length characters into an array at a specified offset. This method blocks the stream till:
  • It has taken some input from the stream.
  • Some IOException has occurred
  • It has reached the end of the stream while reading.
Syntax:
public int read(char[] charArray, 
                     int offset, 
                     int length) 
Parameters: This method accepts three mandatory parameters:
  • charArray which is the character array to be written in the Stream.
  • offset which is the offset index at which the characters are to be written in the array.
  • length which is the number of characters to be written in the array.
Return Value: This method returns an integer value which is the number of characters read from the stream. It returns -1 if no character has been read. Exception: This method throws following exceptions:
  • IOException: if some error occurs while input output.
  • IndexOutOfBoundsException: if the offset value is not within the range of character array
Below methods illustrates the working of read(char[], int, int) method: Program 1: Java
// Java program to demonstrate
// PushbackReader read(char, int, int) method

import java.io.*;
import java.util.*;

class GFG {
    public static void main(String[] args)
    {

        try {
            // Initializing a StringReader
            // and PushbackReader
            String s = "GeeksForGeeks";

            StringReader stringReader
                = new StringReader(s);
            PushbackReader pushbackReader
                = new PushbackReader(stringReader);

            // Get the character array
            // to be read from the stream
            char[] charArray = new char[5];

            // Get the offset index
            int offset = 0;

            // Get the length
            int length = 5;

            // Read the charArray
            // to this reader using read() method
            // This will put the str in the stream
            // till it is read by the reader
            pushbackReader
                .read(charArray, offset, length);

            // Print the read charArray
            System.out.println(
                Arrays.toString(charArray));

            // Close the stream
            pushbackReader.close();
            System.out.println("Stream Closed.");
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}
Output:
[G, e, e, k, s]
Stream Closed.
Program 2: Java
// Java program to demonstrate
// PushbackReader read(char, int, int) method

import java.io.*;
import java.util.*;

class GFG {
    public static void main(String[] args)
    {

        try {
            // Initializing a StringReader
            // and PushbackReader
            String s = "GFG";

            StringReader stringReader
                = new StringReader(s);
            PushbackReader pushbackReader
                = new PushbackReader(stringReader);

            // Get the character array
            // to be read from the stream
            char[] charArray = new char[5];

            // Get the offset index
            int offset = 0;

            // Get the length
            int length = 2;

            // Read the charArray
            // to this reader using read() method
            // This will put the str in the stream
            // till it is read by the reader
            pushbackReader
                .read(charArray, offset, length);

            // Print the read charArray
            System.out.println(
                Arrays.toString(charArray));

            // Close the stream
            pushbackReader.close();
            System.out.println("Stream Closed.");
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}
Output:
[G, F,,, ]
Stream Closed.
Reference: https://docs.oracle.com/javase/9/docs/api/java/io/PushbackReader.html#read-char:A-int-int-

Next Article

Similar Reads