Wednesday, July 3, 2024
HomeLanguagesJavaStringReader read(char, int, int) method in Java with Examples

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

The read(char[], int, int) method of StringReader 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
// StringReader 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 StringReader instance
            StringReader 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
// StringReader 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 StringReader instance
            StringReader reader
                = new StringReader(str);
  
            // Get the character array
            // to be read from the stream
            char[] charArray
                = new char[13];
  
            // Get the offset index
            int offset = 0;
  
            // Get the length
            int length = 13;
  
            // 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/StringReader.html#read-char:A-int-int-

Nokonwaba Nkukhwana
Experience as a skilled Java developer and proven expertise in using tools and technical developments to drive improvements throughout a entire software development life cycle. I have extensive industry and full life cycle experience in a java based environment, along with exceptional analytical, design and problem solving capabilities combined with excellent communication skills and ability to work alongside teams to define and refine new functionality. Currently working in springboot projects(microservices). Considering the fact that change is good, I am always keen to new challenges and growth to sharpen my skills.
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments