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.