Tabelle in neuer Datei speichern

BeneS

Grünschnabel
hey folks,

meine tabelle ließt eine csv datei ein. jetzt sollte es möglich sein ein paar werte in einzelnen Zellen zu ändern und dann das ganze wieder abzuspeichern.

ich hab hier schon mal einen beispiel code gesehen und übernommen, nur speichert mir der code nur eine leere Datei... :

Code:
try{
BufferedWriter bw = new BufferedWriter(new FileWriter(filepath));
System.out.println(filepath);
//DefaultTableModel dtm = new DefaultTableModel();
Object[] oa = dtm.getDataVector().toArray();
for (int i = 0; i < oa.length; i++) {
Object[] o = (Object[]) oa[i];
for (int j = 0; j < o.length; j++) {
bw.write(o[j].toString());
bw.write(SEPARATOR_CHAR);
}
bw.newLine();
}
}
catch(Exception err){}

ich denke man muss der Tabelle irgendwie mitteilen,dass da was gändert wurde.

für anregungen wäre ich sehr dankbar.

mfg

bene
 
ich glaube ich hab das prinzip von dem FileWriter nicht verstanden...

Code:
import java.io.*;
public class Datei
{
  public static void main( String args[] )
  {
    FileWriter fw = null;
    try
    {
      fw = new FileWriter( "C:\\fileWriter.txt" );
      fw.write( "Hallo Welt geht in eine Datei" );
    }
    catch ( IOException e ) {
      System.out.println( "Konnte Datei nicht erstellen" );
    }
    finally {
      try {
        if ( fw != null ) fw.close();
      } catch (IOException e) {}
    }
  }
}

funktioniert nämlich auch nicht..... :mad:

das kann doch nicht sein. Was mach ich denn da falsch?

mfg

bene
 
Hmm.. komisch, ich habe grade Deinen Code bei mir ausgeführt, und es hat wunderbar geklappt. Hast Du vielleicht keine Schreibrechte auf Deiner C-Platte?
 
Du musst den Writer closen, ähnlich, wie in Deinem zweiten Beispiel.;)

EDIT:
Du kannst auch zwischendurch die flush() Methode von dem BufferedWriter, dann wird der Inhalt aus dem Puffer direkt in die Datei geschrieben.
 
Zuletzt bearbeitet:
also: das close und das flush hab ich nun eingefügt. und die ganze funktion in einer neuen Klasse definiert und voila: es geht jetzt :)

vielleicht war es für das programm ein problem die read und save funktion in einer Klasse zu haben.. naja wie auch immer. Wenigstens gehts jetzt ;-)

mfg

bene
 
Zurück