Nel seguente esempio viene richiesto l’inserimento di tre nominativi attraverso un ciclo for e ad ogni ciclo il nominativo inserito verrà scritto in un file “nominativo.txt” al termine dei tre inserimenti verrà aperto il file e con un ciclo while verrà letta ogni singola riga all’interno del file e messa in un array di stringhe di grandezza [2] (nome cognome) , successivamente verrà mostrato a video soltanto il cognome quindi nomCog[1].
import java.util.Scanner; import java.io.IOException; import java.io.FileNotFoundException; import java.io.FileWriter; import java.io.FileReader; import java.io.BufferedWriter; import java.io.BufferedReader; public class ElencoNomi { public static void main(String[] args) throws IOException { try { Scanner console = new Scanner(System.in); FileWriter writer = new FileWriter("nominativi.txt"); BufferedWriter buffer = new BufferedWriter(writer); for (int i = 1; i <= 3; i++) { System.out.println("Inserisci il nominativo " + i + ": "); System.out.print("> "); String nominativo = console.nextLine(); scrivi(buffer, nominativo); } buffer.close(); FileReader fread = new FileReader("nominativi.txt"); BufferedReader reader = new BufferedReader(fread); String riga; while ((riga = reader.readLine()) != null) { String[] nomCog = new String[2]; nomCog = riga.split(" "); System.out.println(nomCog[1]); } } catch (FileNotFoundException e) { System.out.println("File non trovato " + e.getMessage()); } } public static void scrivi(BufferedWriter buffer, String nominativo) throws IOException { buffer.write(nominativo); buffer.newLine(); } }
Output Video:
Inserisci il nominativo 1:
> Isaac Asimov
Inserisci il nominativo 2:
> William Gibson
Inserisci il nominativo 3:
> Arthur Clarke
Asimov
Gibson
Clarke
Leave a Comment
Devi essere connesso per inviare un commento.