Leia um arquivo de texto em Java
-
Use a classe
Scannerpara ler arquivos em Java -
Use a classe
BufferedReaderpara ler arquivos em Java -
Use a classe
FileReaderpara ler arquivos em Java
Em quase todos os aplicativos, lidamos com leitura e escrita de texto, por isso é essencial aprender sobre isso. Existem vários métodos para ler um arquivo de texto simples em Java.
No tutorial, aprenderemos como ler um arquivo de texto em Java.
Use a classe Scanner para ler arquivos em Java
A classe Scanner pode ler arquivos em Java. Primeiro, é criado um objeto File que representa o caminho do arquivo necessário. O objeto da classe Scanner é criado passando o objeto File acima.
A função hasNext() verifica se outra linha existe em um arquivo e a função nextLine() lê a linha fornecida.
Veja o código abaixo.
import java.io.File;
import java.util.Scanner;
public class ScannerClassDemo {
public static void main(String[] args) throws Exception {
File doc = new File("C:\\Drive\\Learn.txt");
Scanner obj = new Scanner(doc);
while (obj.hasNextLine()) System.out.println(obj.nextLine());
}
}
Resultado:
File Reading Example
Uma exceção FileNotFound é lançada se o arquivo fornecido não existir.
Também podemos fazer isso criando o objeto da classe InputStream e depois passando-o pela classe Scanner.
Por exemplo,
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Scanner;
public class ScannerClassDemo {
public static void main(String args[]) throws Exception {
InputStream ins = new FileInputStream("C:\\Drive\\Learn.txt");
Scanner obj = new Scanner(ins);
while (obj.hasNextLine()) System.out.println(obj.nextLine());
}
}
Resultado:
File Reading Example
A vantagem de usar esse método é que ele oferece capacidade de análise.
Use a classe BufferedReader para ler arquivos em Java
BufferedReader lê o texto de um fluxo de entrada baseado em caracteres. O armazenamento em buffer é feito para a leitura eficiente de arrayes, linhas e caracteres. Se o tamanho do buffer não for especificado, o tamanho padrão é usado, que é grande o suficiente para o uso. Podemos usá-lo para ler arquivos em Java.
BufferedReader fornece leitura rápida através do armazenamento em buffer de dados.
No exemplo a seguir, lemos o texto de um arquivo em algum caminho especificado.
import java.io.*;
public class ReadingTextusingBufferedReader {
public static void main(String[] args) throws Exception {
File doc = new File("C:\\Drive\\Learn.txt");
BufferedReader obj = new BufferedReader(new FileReader(doc));
String strng;
while ((strng = obj.readLine()) != null) System.out.println(strng);
}
}
Resultado:
File Reading Example
Use a classe FileReader para ler arquivos em Java
A classe FileReader oferece uma maneira conveniente de ler texto simples em java. Nesta classe, o método do construtor usa o tamanho do buffer de bytes padrão e a codificação de caracteres padrão conforme mais apropriado.
Podemos usá-lo para ler arquivos em Java, conforme mostrado a seguir.
import java.io.*;
public class ReadingTextFile {
public static void main(String args[]) throws IOException {
File doc = new File("Demo.txt");
doc.createNewFile();
FileReader freader = new FileReader(doc);
char[] i = new char[100];
freader.read(i);
for (char j : i) System.out.print(j);
freader.close();
}
}
Resultado:
File Reading Example
A função createNewFile() cria um novo arquivo vazio. Após a chamada da função, se o arquivo não existir, ele retornará True e criará um arquivo vazio com um nome especificado.