public void salvaPartita(String file) { ObjectOutputStream output = null; try { output = new ObjectOutputStream(new FileOutputStream(file + ".fap")); // Salvataggio dei giocatori System.out.println("La size mentre salvo è: " + gestore.getGiocatori().size()); output.writeObject(new ArrayList<Giocatore>(gestore.getGiocatori())); // Salvataggio dei turni output.writeObject(gestore.getTurni()); // Salvataggio variabili: numGiocatori, giocatoreAttuale e // statoIniziale output.writeObject(gestore.getGiocatori().size()); output.writeObject(gestore.getGiocatoreAttuale()); output.writeObject(gestore.getStatoIniziale()); output.writeObject(nomeConfigurazione); } catch (IOException e) { System.out.println(e); System.out.println("Impossibile salvare la partita."); } try { output.close(); } catch (IOException e2) { System.out.println(e2); System.out.println("Errore riscontrato nell'operazione di chiusura del file."); } System.out.println("Salvataggio Riuscito"); }
@SuppressWarnings("unchecked") public void caricaPartita(String partita) { ObjectInputStream input = null; try { input = new ObjectInputStream(new FileInputStream(partita)); } // catturo il null pointer catch (NullPointerException e) { System.out.println("Nessun file selezionato."); } catch (FileNotFoundException e) { System.out.println(e); System.out.println("File non trovato."); } catch (IOException e) { System.out.println(e); System.err.println("Impossibile aprire il file."); } try { // Caricamento dei giocatori gestore.setGiocatori((ArrayList<Giocatore>) input.readObject()); System.out.println("La size mentre carico è: " + gestore.getGiocatori().size()); // Caricamento dei turni gestore.setTurni((ArrayList<Integer>) input.readObject()); // Caricamento variabili: numGiocatori, giocatoreAttuale e // statoIniziale gestore.setNumeroGiocatori((int) input.readObject()); gestore.setGiocatoreAttuale((int) input.readObject()); gestore.setStatoIniziale((boolean) input.readObject()); this.nomeConfigurazione = (String) input.readObject(); System.out.println(gestore.getGiocatori().toString()); System.out.println(gestore.getTurni().toString()); System.out.println(gestore.size()); System.out.println(gestore.getGiocatoreAttuale()); System.out.println(gestore.getStatoIniziale()); } catch (IOException e1) { System.err.println("Impossibile caricare la partita."); } catch (ClassNotFoundException e1) { e1.getStackTrace(); e1.getMessage(); } try { input.close(); } catch (IOException e2) { System.err.println("Errore riscontrato nell'operazione di chiusura del file."); } // Allineamento dell'istanza della Tavola da gioco con gli oggetti // caricati System.out.println("Caricamento Riuscito"); }