コード例 #1
0
ファイル: GameManager.java プロジェクト: ogavb/progettoIGPE
  @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");
  }