Vediamo, allora di generalizzare: creaiamo una applicazione che chiede all'utente se desidera creare la lista dei libri da zero, oppure se ha un file da cui pescarla.
In questo caso, quindi, il programma farà due cose diverse in base alla scelta dell'utente: se l'utente ha già creato, precedentemente, una lista di libri e vuole riaprirla, dovrà semplicemente fornire al programma il percorso del file da leggere.
Per controllare se un file esiste, comunque, sono sufficienti queste poche righe di codice:
codice:
File f = new File("mioFile.dat");
if (!file.exists()) {
// Il file non esiste
} else {
// Il file esiste già.
}
In questo modo, se il file non esiste posso scegliere, ad esempio, di crearlo, se invece esiste già posso decidere di leggerlo.
Esempio:
codice:
File f = new File("mioFile.dat");
if (f.exists()) {
// Il file esiste: lo leggo
ObjectInputStream ois = new ObjectInputStream( new FileInputStream(f) );
while (ois.available() > 0) {
... // ciclo di lettura del file
}
}
...
Ciao.