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:
import java.io.*;
import java.util.*;
import java.nio.CharBuffer;
class GFG {
public static void main(String[] args)
{
try {
String str = "GeeksForGeeks" ;
StringReader reader
= new StringReader(str);
CharBuffer charBuffer
= CharBuffer.allocate( 5 );
reader.read(charBuffer);
System.out.println(charBuffer
.flip()
.toString());
reader.close();
}
catch (Exception e) {
System.out.println(e);
}
}
}
|
Program 2:
import java.io.*;
import java.util.*;
import java.nio.CharBuffer;
class GFG {
public static void main(String[] args)
{
try {
String str = "GeeksForGeeks" ;
StringReader reader
= new StringReader(str);
CharBuffer charBuffer
= CharBuffer
.allocate( 13 );
reader.read(charBuffer);
System.out.println(charBuffer
.flip()
.toString());
reader.close();
}
catch (Exception e) {
System.out.println(e);
}
}
}
|
Reference: https://docs.oracle.com/javase/9/docs/api/java/io/Reader.html#read-java.nio.CharBuffer-
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!