La matrice è inizializzata con spazi, e dove c'è spazio (quindi una cella in cui non ho scritto) faccio scrivere '£', poi vado a capo.
Ora carico con un buff.readLine(), che leggendo riga per riga, mi riepie una cella alla volta (almeno credo), poi copio il contenuto di questa matrice o[][] in quella dichiarata nel TableModel.codice://Salvataggio su file.txt public void scrivi() { try { FileWriter out = new FileWriter (nomefile); for(int i = 0; i < r; i++){ for(int j = 0; j < c; j++){ if(o[i][j] == " "){ out.write("£" + "\n"); } else{ out.write(o[i][j].toString()); out.write("\n"); } } } out.close(); } catch (IOException ex){ ex.printStackTrace(); } System.out.println("Salvataggio eseguito correttamente"); }
codice://Caricamento da file public Object[][] leggi() { try { int i = 0; int j = 0; in = new FileReader(nomefile); buff = new BufferedReader(in); while(buff.readLine() != null){ if(buff.readLine() == "\n"){ j++; if(j == c){ j = 0; i++; if(i == r) return o; } } o[i][j] = buff.readLine(); } in.close(); } catch (IOException ex){ ex.printStackTrace(); } System.out.println("Caricamento eseguito correttamente"); return o; }

Rispondi quotando