Scheda 16: Scrittura file di testo

Transcript

Scheda 16: Scrittura file di testo
ITI “G.M.Angioy” Sassari – QUARTA INFORMATICA
16. Scheda di lavoro (File di testo in Java: scrittura)
A.S. 2016-17
16/01/2017
package javaapplication1;
import java.io.*;
public class JavaApplication1 {
public static void main (String args[]) {
FileWriter f = null;
PrintWriter fOut = null;
int v=0, finale=10, incremento=2;
//apro il file
try {
f = new FileWriter("f:\\dati\\file.txt");
fOut = new PrintWriter(f);
}
catch (IOException e){
System.out.println("Errore nell'apertura del file");
System.exit(1);
}
//scrivo a video e sul file
try {
while (v < finale) {
v = v + incremento;
System.out.println(v); //scrivo a video
fOut.println(v);
// scrivo su file
}
}
catch (Exception e){
System.out.println("Errore nella scrittura sul file");
System.exit(1);
}
//chiudo il file
try {
f.close();
}
catch (IOException e){
System.out.println("Errore nella chiusura del file");
System.exit(1);
} } // fine main
} // fine class
[email protected]
Questo lavoro è concesso in uso secondo i termini di una Licenza Creative Commons.
32
ITI “G.M.Angioy” Sassari – QUARTA INFORMATICA
A.S. 2016-17
Scrivi il codice Java per gli esercizi seguenti
1. Considera il seguente file di testo DATI.TXT
Pippo
Pluto
Si richiede di :
a. Aggiungere il nome Paperino
b. visualizzarlo a video tutti i 3 nomi
c. sovrascrivere i nomi
d. visualizzare i file con i nuovi nomi (senza quindi pippo, pluto e paperino)
2. Considera un file di testo DATI.TXT con
15
3
27
6
a. Memorizza su un altro file i valori maggiori di 10
b. Memorizza su un altro file la somma dei valori
3. Considera un file di testo che riporta i nomi di alcuni studenti ed i rispettivi voti
(3 per ogni studente) e memorizzare su un altro file i nomi degli studenti che
hanno la media sufficiente, come nell’esempio in figura.
4. Scrivi un metodo che memorizza nel file Numeri.txt N valori interi casuali compresi fra zero e X.
[email protected]
Questo lavoro è concesso in uso secondo i termini di una Licenza Creative Commons.
33