Hallo,
(ich hoffe ich poste das im richtigen Forum, denn ich habe mich gerade hier regestriert)
ich habe ein Problem und zwar möchte ich den Inhalt meiner JTable speichern.
Das Layout und der Inhalt sollen natürlich in der gespeicherten Datei vorhanden sien.
Ich scheitere beim JFileChooser.
Mein schönes Programmchien dient als Bericht Manager.
Zu jedem tag nur Stichpunkte.
Hier mein code:
(ich hoffe ich poste das im richtigen Forum, denn ich habe mich gerade hier regestriert)
ich habe ein Problem und zwar möchte ich den Inhalt meiner JTable speichern.
Das Layout und der Inhalt sollen natürlich in der gespeicherten Datei vorhanden sien.
Ich scheitere beim JFileChooser.
Mein schönes Programmchien dient als Bericht Manager.
Zu jedem tag nur Stichpunkte.
Hier mein code:
Java:
import java.awt.*;
import java.awt.event.*;
import java.beans.*;
import java.io.*;
import javax.swing.*;
import javax.swing.table.TableColumn;
public class PraktikumsberichtManager extends JFrame implements ActionListener{
JTable table1;
JScrollPane s;
JMenuItem item1;
public PraktikumsberichtManager(){
String[] columnNames = {"Tag",
"Datum",
"Aufgaben / was getan wurde"};
Object[][] data = {
{"Montag","3.10.16",""},
{"Dinstag","4.10.16",""},
{"Mitwoch","5.10.16",""},
{"Donerstag","6.10.16",""},
{"Freitag","7.10.16",""},
{"Montag","10.10.16",""},
{"Dintsag","11.10.16",""},
{"Mitwoch","12.10.16",""},
{"Donserstag","13.10.16",""},
{"Freitag","14.10.16",""}};
table1 = new JTable(data, columnNames);
table1.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
final int INDEX_COLUMN1 = 0;
TableColumn col = table1.getColumnModel().getColumn(INDEX_COLUMN1);
col.setPreferredWidth(80);
final int INDEX_COLUMN2 = 1;
TableColumn col2 = table1.getColumnModel().getColumn(INDEX_COLUMN2);
col2.setPreferredWidth(65);
final int INDEX_COLUMN3 = 2;
TableColumn col3 = table1.getColumnModel().getColumn(INDEX_COLUMN3);
col3.setPreferredWidth(305);
s = new JScrollPane(table1);
JMenuBar JMB = new JMenuBar();
JMenu JM1 = new JMenu("menu");
item1 = new JMenuItem("Speichern");
item1.addActionListener(this);
JMB.add(JM1);
JM1.add(item1);
JPanel panel = new JPanel();
panel.add(s);
this.setJMenuBar(JMB);
this.setTitle("Praktikumsberichtmanager");
this.setVisible(true);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setSize(480,280);
this.add(panel);
}
public static void main(String[] args) {
new PraktikumsberichtManager();
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == item1) {
JFileChooser fchooser = new JFileChooser();
fchooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
fchooser.setMultiSelectionEnabled(false);
int returnVal = fchooser.showSaveDialog(fchooser);
if (returnVal == JFileChooser.APPROVE_OPTION) {
try {
File file = fchooser.getSelectedFile();
FileWriter fWriter = new FileWriter(file.getAbsolutePath(), true);
table1.write(fWriter);
fWriter.close();
} catch (IOException grummel) {
System.err.println("error");
}
}
}
}
}
Zuletzt bearbeitet: