Open In App

Reader read(char[], int, int) method in Java with Examples

Improve
Improve
Like Article
Like
Save
Share
Report

The read(char[], int, int) method of Reader 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 program to demonstrate
// Reader read(char[], int, int) method
  
import java.io.*;
import java.util.*;
  
class GFG {
    public static void main(String[] args)
    {
  
        try {
  
            String str = "GeeksForGeeks";
  
            // Create a Reader instance
            Reader reader
                = new StringReader(str);
  
            // 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
            reader.read(charArray, offset, length);
  
            // Print the read charArray
            System.out.println(
                Arrays.toString(charArray));
  
            reader.close();
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}


Output:

[G, e, e, k, s]

Program 2:




// Java program to demonstrate
// Reader read(char[], int, int) method
  
import java.io.*;
import java.util.*;
  
class GFG {
    public static void main(String[] args)
    {
  
        try {
  
            String str = "GeeksForGeeks";
  
            // Create a Reader instance
            Reader reader
                = new StringReader(str);
  
            // Get the character array
            // to be read from the stream
            char[] charArray
                = new char[str.length()];
  
            // Get the offset index
            int offset = 0;
  
            // Get the length
            int length = str.length();
  
            // Read the charArray
            // to this reader using read() method
            // This will put the str in the stream
            // till it is read by the reader
            reader.read(charArray, offset, length);
  
            // Print the read charArray
            System.out.println(
                Arrays.toString(charArray));
  
            reader.close();
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}


Output:

[G, e, e, k, s, F, o, r, G, e, e, k, s]

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



Last Updated : 07 Feb, 2019
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads