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

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:

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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);
        }
    }
}

chevron_right


Output:

[G, e, e, k, s]
Stream Closed.

Program 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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);
        }
    }
}

chevron_right


Output:

[G, F,,, ]
Stream Closed.

Reference: https://docs.oracle.com/javase/9/docs/api/java/io/PushbackReader.html#read-char:A-int-int-



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.