@Override public void speichern(String filename, Object o) { PrintStream ps = new PrintStream(baos); PrintStream old = System.out; System.setOut(ps); this.s = (SpielBean) o; try { br = new BufferedWriter(new FileWriter(filename + ".csv")); } catch (IOException e2) { e2.printStackTrace(); } try { Spieler sp1 = s.getSpieler1(); Spieler sp2 = s.getSpieler2(); // Spieler 1 wird gespeichert if ((sp1.getKi() == null)) { if (sp1.getFarbe().equals(FarbEnum.WEISS)) { br.write("Spieler: " + sp1.getName() + ";" + "Weiss" + ";" + "Mensch"); br.newLine(); } } else if (sp1.getKi() instanceof KI_Dame) { if (sp1.getFarbe().equals(FarbEnum.WEISS)) { br.write("Spieler: " + sp1.getName() + ";" + "Weiss" + ";" + "KI"); br.newLine(); } } // Spieler 2 wird gespeichert if ((sp2.getKi() == null)) { if (sp2.getFarbe().equals(FarbEnum.SCHWARZ)) { br.write("Spieler: " + sp2.getName() + ";" + "Schwarz" + ";" + "Mensch"); br.newLine(); } } else if (sp2.getKi() instanceof KI_Dame) { if (sp2.getFarbe().equals(FarbEnum.SCHWARZ)) { br.write("Spieler: " + sp2.getName() + ";" + "Schwarz" + ";" + "KI"); br.newLine(); } } br.write( "SpielerAmZug: " + s.getSpielerAmZug().getName() + ";" + s.getSpielerAmZug().getFarbe() + ";" + "null"); br.newLine(); // Felder werden gespeichert for (int i = 0; i < s.getSpielbrett().getFelder().length; i++) { for (int j = 0; j < s.getSpielbrett().getFelder()[i].length; j++) { if (s.getSpielbrett().getFelder()[i][j].getFigur() == null) { br.write( s.getSpielbrett().getFelder()[i][j].getId() + ";" + s.getSpielbrett().getFelder()[i][j].getFarbeFeld() + ";" + "null" + ";" + "null" + ";" + "false"); br.newLine(); } else if (s.getSpielbrett().getFelder()[i][j].getFigur() != null) { br.write( s.getSpielbrett().getFelder()[i][j].getId() + ";" + s.getSpielbrett().getFelder()[i][j].getFarbeFeld() + ";" + s.getSpielbrett().getFelder()[i][j].getFigur().getId() + ";" + s.getSpielbrett().getFelder()[i][j].getFigur().getFarbe() + ";" + s.getSpielbrett().getFelder()[i][j].getFigur().isIstDame()); br.newLine(); } } } System.out.println("SPIEL CSV WURDE ERFOLGREICH GESPEICHERT !!!"); } catch (IOException e1) { e1.printStackTrace(); } finally { try { br.close(); } catch (IOException e1) { e1.printStackTrace(); } } System.out.flush(); System.setOut(old); }