就像标题所暗示的那样,我正在寻找一种方法来将带有数据的jtable导出到.csv file
。我不是在寻找其他选项CSV
,因为CSV
是我的计划的要求。
我一直在查看某些内容,例如bindy
apache.camel
,我找不到足够的信息来了解如何使用它。
建议什么?如果某人有bindy
使用的合适例子,我也不介意。
友好的问候,
Skillcoil
答案 0 :(得分:1)
您可以使用apache poi从JTable生成Excel文件,然后使用此代码 从此处Converting XLS to CSV files Using Java将XLS文件导出为CSV文件。
我实际上用这种方式生成CSV文件
答案 1 :(得分:1)
就是这样:
public void writeCSVfile(JTable table) throws IOException, ClassNotFoundException, SQLException{
Writer writer = null;
DefaultTableModel dtm = (DefaultTableModel) table.getModel();
int nRow = dtm.getRowCount();
int nCol = dtm.getColumnCount();
try {
writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("file.txt"), "utf-8"));
//write the header information
StringBuffer bufferHeader = new StringBuffer();
for (int j = 0; j < nCol; j++) {
bufferHeader.append(dtm.getColumnName(j));
if (j!=nCol) bufferHeader.append(", ");
}
writer.write(bufferHeader.toString() + "\r\n");
//write row information
for (int i = 0 ; i < nRow ; i++){
StringBuffer buffer = new StringBuffer();
for (int j = 0 ; j < nCol ; j++){
buffer.append(dtm.getValueAt(i,j));
if (j!=nCol) buffer.append(", ");
}
writer.write(buffer.toString() + "\r\n");
}
} finally {
writer.close();
}
}
答案 2 :(得分:0)
一个小循环怎么样?表模型提供所有必需的数据,例如行数,列数和数据。