Classe de Leitor Java
Classe Java Reader
Neste tutorial, aprenderemos sobre o Java Reader, suas subclasses e seus métodos com a ajuda de um exemplo.
O Reader
classe do java.io
package é uma superclasse abstrata que representa um fluxo de caracteres.
Desde Reader
é uma classe abstrata, não é útil por si só. No entanto, suas subclasses podem ser usadas para ler dados.
Subclasses de Reader
Para usar a funcionalidade de
Reader
, podemos usar suas subclasses. Alguns deles são:- Leitor em buffer
- InputStreamReader
- Leitor de arquivos
- Leitor de seqüências

Vamos aprender sobre todas essas subclasses no próximo tutorial.
Criar um leitor
Para criar um
Reader
, devemos importar o java.io.Reader
pacote primeiro. Depois de importar o pacote, aqui está como podemos criar o leitor.
// Creates a Reader
Reader input = new FileReader();
Aqui, criamos um leitor usando o
FileReader
classe. É porque Reader
é uma classe abstrata. Portanto, não podemos criar um objeto de Reader
. Observação :Também podemos criar leitores de outras subclasses de
Reader
. Métodos de Leitor
O
Reader
classe fornece diferentes métodos que são implementados por suas subclasses. Aqui estão alguns dos métodos comumente usados:ready()
- verifica se o leitor está pronto para ser lidoread(char[] array)
- lê os caracteres do stream e armazena no array especificadoread(char[] array, int start, int length)
- lê o número de caracteres igual a comprimento do stream e armazena no array especificado a partir do startmark()
- marca a posição no fluxo até a qual os dados foram lidosreset()
- retorna o controle para o ponto no fluxo onde a marca está definidaskip()
- descarta o número especificado de caracteres do fluxo
Exemplo:leitor usando o FileReader
Veja como podemos implementar
Reader
usando o FileReader
classe. Suponha que temos um arquivo chamado input.txt com o seguinte conteúdo.
This is a line of text inside the file.
Vamos tentar ler este arquivo usando
FileReader
(uma subclasse 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();
}
}
}
Saída
Is there data in the stream? true Data in the stream: This is a line of text inside the file.
No exemplo acima, criamos um leitor usando o
FileReader
classe. O leitor está vinculado ao arquivo input.txt .
Reader input = new FileReader("input.txt");
Para ler dados do input.txt arquivo, implementamos esses métodos.
input.read(); // to read data from the reader
input.close(); // to close the reader
Para saber mais, visite Java Reader (documentação oficial do Java).
Java