Método de lectura StringReader (CharBuffer) en Java con ejemplos

El método read(CharBuffer) de la clase StringReader en Java se usa para leer los caracteres especificados en una instancia de CharBuffer. Este método bloquea la transmisión hasta que:

  • Ha tomado algo de entrada de la corriente.
  • Se ha producido alguna IOException
  • Ha llegado al final de la secuencia durante la lectura.

Sintaxis:

public int read(CharBuffer charBuffer)

Parámetros: este método acepta un parámetro obligatorio charBuffer que es la instancia de CharBuffer que se escribirá en el Stream.

Valor devuelto: este método devuelve un valor entero que es el número de caracteres leídos de la secuencia. Devuelve -1 si no se ha leído ningún carácter.

Excepción: este método arroja las siguientes excepciones:

  • IOException: si se produce algún error durante la salida de entrada.
  • NullPointerException: si la instancia de CharBuffer a llenar es nula
  • ReadOnlyBufferException: si la instancia de CharBuffer que se va a llenar es un búfer de solo lectura

Los siguientes métodos ilustran el funcionamiento del método read(CharBuffer):

Programa 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);
        }
    }
}
Producción:

Geeks

Programa 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);
        }
    }
}
Producción:

GeeksForGeeks

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

Publicación traducida automáticamente

Artículo escrito por Code_r y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *