📢 Nuovo Corso Bootstrap Completo disponibile!

Esercizi Lavorare con File Java

Ecco degli esercizi semplici con soluzione per praticare le basi su come lavorare con i file in Java.

Esercizio 1

Leggere il contenuto di un file di testo:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
try (BufferedReader reader = new BufferedReader(new FileReader("nome_file.txt"))) {
String linea;
while ((linea = reader.readLine()) != null) {
System.out.println(linea);
}
} catch (IOException e) {
e.printStackTrace();
}

Esercizio 2

Scrivere il contenuto in un file di testo:
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
try (BufferedWriter writer = new BufferedWriter(new FileWriter("nome_file.txt"))) {
writer.write("Contenuto del file");
} catch (IOException e) {
e.printStackTrace();
}

Esercizio 3

Copiare un file in un altro file:
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
try (FileInputStream fis = new FileInputStream("file_origine.txt");
FileOutputStream fos = new FileOutputStream("file_destinazione.txt")) {
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = fis.read(buffer)) != -1) {
fos.write(buffer, 0, bytesRead);
}
} catch (IOException e) {
e.printStackTrace();
}

Esercizio 4

Verificare l'esistenza di un file:
import java.io.File;
File file = new File("nome_file.txt");
if (file.exists()) {
System.out.println("Il file esiste.");
} else {
System.out.println("Il file non esiste.");
}

Esercizio 5

Eliminare un file:
import java.io.File;
File file = new File("nome_file.txt");
if (file.delete()) {
System.out.println("Il file è stato eliminato.");
} else {
System.out.println("Impossibile eliminare il file.");
}

Esercizio 6

Elencare i file in una directory:
import java.io.File;
File directory = new File("directory");
if (directory.isDirectory()) {
File[] files = directory.listFiles();
if (files != null) {
for (File file : files) {
System.out.println(file.getName());
}
}
}

Esercizio 7

Creare una nuova directory:
import java.io.File;
File directory = new File("nuova_directory");
if (directory.mkdir()) {
System.out.println("La directory è stata creata.");
} else {
System.out.println("Impossibile creare la directory.");
}

Esercizio 8

Rinominare un file:
import java.io.File;
File file = new File("nome_file.txt");
File nuovoNome = new File("nuovo_nome.txt");
if (file.renameTo(nuovoNome)) {
System.out.println("Il file è stato rinominato.");
} else {
System.out.println("Impossibile rinominare il file.");
}

Esercizio 9

Leggere il contenuto di una directory ricorsivamente:
import java.io.File;
File directory = new File("directory");
leggiContenutoRicorsivo(directory);
private static void leggiContenutoRicorsivo(File file) {
if (file.isDirectory()) {
File[] files = file.listFiles();
if (files != null) {
for (File f : files) {
leggiContenutoRicorsivo(f);
}
}
} else {
System.out.println(file.getName());
}
}

Esercizio 10

Ottenere le informazioni di un file:
import java.io.File;
File file = new File("nome_file.txt");
if (file.exists()) {
System.out.println("Nome file: " + file.getName());
System.out.println("Percorso assoluto: " + file.getAbsolutePath());
System.out.println("Dimensione: " + file.length() + " byte");
System.out.println("Ultima modifica: " + file.lastModified());
} else {
System.out.println("Il file non esiste.");
}