Hallo ich habe ein JTable bei dem ich Daten Speichern und Laden kann. Speichern funktioniert einwandfrei, das txt file sieht so aus : 1#2#3# usw. . nur wenn ich diese Datei dann in die Tabelle laden will schreibt mir das Programm nicht 1, 2, 3 rein ,sonder [Ljava.lang.String@ und irgendeine Zahl. Wie kann ich dies beheben ? Hier der Code zum Speichern und Laden:
Code:
btnSave.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
DefaultTableModel deft=(DefaultTableModel)table.getModel();
try
{
FileWriter fw=new FileWriter("c:\\test.txt");
for(int row=0;row<deft.getRowCount();row++)
{
StringBuilder sb=new StringBuilder();
for(int col=0;col<deft.getColumnCount();col++)
{
sb.append(deft.getValueAt(row,col)).append("#");
}
sb.append(System.getProperty("line.separator"));
fw.write(sb.toString());
}
fw.close();
}
catch(Exception e)
{
System.out.println("Schreibfehler: "+e.getMessage());
}
}});
btnLoad.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
DefaultTableModel deft=(DefaultTableModel)table.getModel();
try
{
FileReader fr=new FileReader("c:\\test.txt");
BufferedReader br=new BufferedReader(fr);
String zeile;
while((zeile=br.readLine())!=null)
{
String[] a=zeile.split("#"),b=zeile.split("#"), c=zeile.split("#");
deft.addRow(new Object[]
{
a, b, c
});
}
fr.close();
}
catch(Exception e)
{
System.out.println("Schreibfehler: "+e.getMessage());
}
}