Zapis tabeli do pliku

0

Mam JTable i DefaultTableModal. Dodaję rekordy do tabeli. Jak mogę ją teraz zapisać do pliku? Napisałem coś takiego:

else if (str.equals("Zapisz do pliku"))
	{
		String sciezka = JOptionPane.showInputDialog("Zapis. Podaj nazwę pliku:");
		
		try
		{
			ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(sciezka));
			oos.writeObject(tab);
			oos.flush();
			oos.close();
		}
		catch (Exception e)
		{
			System.out.println("Blad zapisu");
		}
	}
	
	else if (str.equals("Odczytaj z pliku"))
	{
		String sciezka = JOptionPane.showInputDialog("Odczyt. Podaj nazwę pliku:");
		
		try
		{				
			ObjectInputStream ois = new ObjectInputStream(new FileInputStream(sciezka));
			tab = (JTable)ois.readObject();
			ois.close();
		}
		catch (Exception e)
		{
			System.out.println("Bląd odczytu");
		}
	}

Ale nie działa. Niby nie wyrzuca wyjątków, ale po odczytaniu z pliku nic się nie zmienia. Czemu?

0

Nie używałem nigdy JTable, ale google mówi:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6441373

i jakiś post:

So you need to stop table edting before serialization by the following 2 lines:

TableCellEditor tce = yourJTable.getCellEditor();
tce.stopCellEditing();

1 użytkowników online, w tym zalogowanych: 0, gości: 1