Open In App

StringReader read(CharBuffer) method in Java with Examples

Last Updated : 13 Feb, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

The read(CharBuffer) method of StringReader Class in Java is used to read the specified characters into a CharBuffer instance. 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(CharBuffer charBuffer)

Parameters: This method accepts a mandatory parameter charBuffer which is the CharBuffer instance to be written in the Stream.

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.
  • NullPointerException: if the CharBuffer instance to be filled is null
  • ReadOnlyBufferException: if the CharBuffer instance to be filled is a read only buffer

Below methods illustrates the working of read(CharBuffer) method:

Program 1:




// Java program to demonstrate
// StringReader read(CharBuffer) method
  
import java.io.*;
import java.util.*;
import java.nio.CharBuffer;
  
class GFG {
    public static void main(String[] args)
    {
  
        try {
            String str = "GeeksForGeeks";
  
            // Create a StringReader instance
            StringReader reader
                = new StringReader(str);
  
            // Get the CharBuffer instance
            // to be read from the stream
            CharBuffer charBuffer
                = CharBuffer.allocate(5);
  
            // Read the charBuffer
            // to this reader using read() method
            // This will put the str in the stream
            // till it is read by the reader
            reader.read(charBuffer);
  
            // Print the read charBuffer
            System.out.println(charBuffer
                                   .flip()
                                   .toString());
  
            reader.close();
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}


Output:

Geeks

Program 2:




// Java program to demonstrate
// StringReader read(CharBuffer) method
  
import java.io.*;
import java.util.*;
import java.nio.CharBuffer;
  
class GFG {
    public static void main(String[] args)
    {
  
        try {
            String str = "GeeksForGeeks";
  
            // Create a StringReader instance
            StringReader reader
                = new StringReader(str);
  
            // Get the CharBuffer instance
            // to be read from the stream
            CharBuffer charBuffer
                = CharBuffer
                      .allocate(13);
  
            // Read the charBuffer
            // to this reader using read() method
            // This will put the str in the stream
            // till it is read by the reader
            reader.read(charBuffer);
  
            // Print the read charBuffer
            System.out.println(charBuffer
                                   .flip()
                                   .toString());
  
            reader.close();
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}


Output:

GeeksForGeeks

Reference: https://docs.oracle.com/javase/9/docs/api/java/io/Reader.html#read-java.nio.CharBuffer-



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads