Allora mi sono ritrovato davanti ad un problema che sinceramente non mi aspettavo.
nella mia pplicazione carico e salvo nel seguente modo:
codice:
public void salvaAssociato() {
if(MetodiUtilità.controllaSessione())return;
try {
File f = new File("archive/Associati.fjs");
f.setWritable(true);
FileOutputStream file = new FileOutputStream(f.getAbsolutePath());
ObjectOutputStream output = new ObjectOutputStream(file);
output.writeObject(this.listaAssociati);
file.flush();
file.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public void caricaAssociato() throws ClassNotFoundException {
FileInputStream file;
try {
file = new FileInputStream("archive/Associati.fjs");
ObjectInputStream input = new ObjectInputStream(file);
this.listaAssociati = (HashMap<String, Persona>) input.readObject();
file.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
this.salvaAssociato();
}
}
il che funziona benissimo su windows, mentre su unix no.
il problema è al 99% il path...che su windows e su linux è "diverso", solo che non ricordo come risolvere questo problema...in pratica non ricordo come fare il check sul Sistema Operativo e in base a quello cambiare il loading dei file.