А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Э Ю Я Все примеры | Примеры по пакетам |
|
Запись таблицы в файл csv//Запись таблицы в файл csv
//(Comma separated values (CSV), RFC 4180 )
//Внести новые данные в ячейки таблицы и сохранить в файле.
package csv;
import java.awt.event.*;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.util.Vector;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
public class csvTable1 {
static DefaultTableModel dtm;
static String[] tableData;
static Vector rowData=new Vector();
//Вектор, представляющий строку таблицы
static Vector< Vector> rows = new Vector< Vector>();
//Вектор векторов, хранящий всю таблицу
static Vector columns = new Vector();
static String tableString="";
public static String writeToFile(String filename, String strPage ){
PrintWriter writer = null;
try {
writer = new PrintWriter(new OutputStreamWriter(
new FileOutputStream(filename), "utf-8"));
writer.write(strPage);
writer.close();
} catch (Exception ex) {
}
return strPage;
}
public static Action action = new AbstractAction("Добавить строку") {
public void actionPerformed(ActionEvent evt) {
rowData=new Vector();
rowData.add(" ");
rowData.add(" ");
rowData.add(" ");
rows.add(rowData);
String strPage = "";
System.out.println("rows "+rows);
dtm.fireTableDataChanged();
}
};
public static Action action1 = new AbstractAction("Записать в файл") {
public void actionPerformed(ActionEvent evt) {
String str=new String();
for(int i=0;i< rows.size();i++){
str=null;
str="";
for(int j=0;j< rows.get(i).size();j++){
if(!str.equals("")){
str=str+", "+rows.get(i).get(j).toString();
}
else{
str=rows.get(i).get(j).toString();
}
}
str=str+" CRLF"+"\n";
tableString=tableString+str;
}
System.out.println("rows "+tableString);
writeToFile("/mydir/csv1.txt", tableString);
}
};
private static void createAndShowGUI() {
Vector row = new Vector();
row.add( "a1" );
row.add( "b1" );
row.add( "c1" );
rows.add( row );
row = new Vector();
row.add( "a2" );
row.add( "b2" );
row.add( "c2" );
rows.add( row );
columns.add ( "a" );
columns.add ( "b" );
columns.add ( "c" );
dtm = new DefaultTableModel(rows, columns);
JFrame frame = new JFrame(
"Таблица из файла csv (Comma separated values (CSV), RFC 4180 )"
);
JPanel jp=new JPanel();
JPanel jp1=new JPanel();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JTable jtb=new JTable(dtm);
JButton jb=new JButton(action);
JButton jb1=new JButton(action1);
jb.setText("Добавить строку");
jb1.setText("Записать в файл");
Box box = new Box(BoxLayout.X_AXIS);
jp1.add(jb);
jp1.add(jb1);
jp.add(jtb);
box.add(jp);
box.add(jp1);
frame.getContentPane().add(box);
frame.setSize(500, 333);
frame.setVisible(true);
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}
Файл к примеру: Таблица из файла csv |
|
|
|
|