Lector de Java (con ejemplo)

En este tutorial, aprenderemos sobre Java Reader, sus subclases y sus métodos con la ayuda de un ejemplo.

La Readerclase del java.iopaquete es una superclase abstracta que representa un flujo de caracteres.

Dado que Readeres una clase abstracta, no es útil por sí misma. Sin embargo, sus subclases se pueden utilizar para leer datos.

Subclases de lector

Para usar la funcionalidad de Reader, podemos usar sus subclases. Algunos de ellos son:

  • BufferedReader
  • InputStreamReader
  • FileReader
  • StringReader

Aprenderemos sobre todas estas subclases en el próximo tutorial.

Crear un lector

Para crear un Reader, java.io.Readerprimero debemos importar el paquete. Una vez que importamos el paquete, así es como podemos crear el lector.

 // Creates a Reader Reader input = new FileReader(); 

Aquí, hemos creado un lector usando la FileReaderclase. Es porque Readeres una clase abstracta. Por tanto, no podemos crear un objeto de Reader.

Nota : También podemos crear lectores a partir de otras subclases de Reader.

Métodos de lectura

La Readerclase proporciona diferentes métodos que son implementados por sus subclases. Estos son algunos de los métodos más utilizados:

  • ready() - comprueba si el lector está listo para ser leído
  • read(char() array) - lee los caracteres de la secuencia y los almacena en la matriz especificada
  • read(char() array, int start, int length) - lee el número de caracteres igual a la longitud de la secuencia y los almacena en la matriz especificada comenzando desde el principio
  • mark() - marca la posición en la secuencia hasta la que se han leído los datos
  • reset() - devuelve el control al punto de la secuencia donde se establece la marca
  • skip() - descarta el número especificado de caracteres de la secuencia

Ejemplo: Reader con FileReader

Así es como podemos implementar Readerusando la FileReaderclase.

Supongamos que tenemos un archivo llamado input.txt con el siguiente contenido.

 This is a line of text inside the file. 

Intentemos leer este archivo usando FileReader(una subclase de Reader).

 import java.io.Reader; import java.io.FileReader; class Main ( public static void main(String() args) ( // Creates an array of character char() array = new char(100); try ( // Creates a reader using the FileReader Reader input = new FileReader("input.txt"); // Checks if reader is ready System.out.println("Is there data in the stream? " + input.ready()); // Reads characters input.read(array); System.out.println("Data in the stream:"); System.out.println(array); // Closes the reader input.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Salida

¿Hay datos en la transmisión? true Datos en la secuencia: esta es una línea de texto dentro del archivo.

En el ejemplo anterior, hemos creado un lector usando la FileReaderclase. El lector está vinculado con el archivo input.txt .

 Reader input = new FileReader("input.txt"); 

Para leer datos del archivo input.txt , hemos implementado estos métodos.

 input.read(); // to read data from the reader input.close(); // to close the reader 

Para obtener más información, visite Java Reader (documentación oficial de Java).

Articulos interesantes...