Arquivos de leitura Java
Ler um arquivo
No capítulo anterior, você aprendeu como criar e gravar em um arquivo.
No exemplo a seguir, usamos a Scanner
classe para ler o conteúdo do arquivo de texto que criamos no capítulo anterior:
Exemplo
import java.io.File; // Import the File class
import java.io.FileNotFoundException; // Import this class to handle errors
import java.util.Scanner; // Import the Scanner class to read text files
public class ReadFile {
public static void main(String[] args) {
try {
File myObj = new File("filename.txt");
Scanner myReader = new Scanner(myObj);
while (myReader.hasNextLine()) {
String data = myReader.nextLine();
System.out.println(data);
}
myReader.close();
} catch (FileNotFoundException e) {
System.out.println("An error occurred.");
e.printStackTrace();
}
}
}
A saída será:
Files in Java might be tricky, but it is fun enough!
Obter informações do arquivo
Para obter mais informações sobre um arquivo, use qualquer um dos File
métodos:
Exemplo
import java.io.File; // Import the File class
public class GetFileInfo {
public static void main(String[] args) {
File myObj = new File("filename.txt");
if (myObj.exists()) {
System.out.println("File name: " + myObj.getName());
System.out.println("Absolute path: " + myObj.getAbsolutePath());
System.out.println("Writeable: " + myObj.canWrite());
System.out.println("Readable " + myObj.canRead());
System.out.println("File size in bytes " + myObj.length());
} else {
System.out.println("The file does not exist.");
}
}
}
A saída será:
File name: filename.txt
Absolute path: C:\Users\MyName\filename.txt
Writeable: true
Readable: true
File size in bytes: 0
Nota: Existem muitas classes disponíveis na API Java que podem ser usadas para ler e gravar arquivos em Java: FileReader, BufferedReader, Files, Scanner, FileInputStream, FileWriter, BufferedWriter, FileOutputStream
, etc. Qual usar depende da versão Java com a qual você está trabalhando e se você precisa ler bytes ou caracteres, e o tamanho do arquivo/linhas etc.
Dica: Para excluir um arquivo, leia o capítulo Java Delete Files .