就像标题所暗示的那样,我正在寻找一种将带有数据的 jtable 导出到.csv file
. 我不是在寻找其他选择CSV
,因为这CSV
是我的程序的要求。
我一直在研究某些东西,比如bindy
putapache.camel
我找不到足够的信息来了解如何使用它。
推荐什么?如果有人有一个很好的例子,bindy
我也不介意。
友好的问候,
技能线圈
就像标题所暗示的那样,我正在寻找一种将带有数据的 jtable 导出到.csv file
. 我不是在寻找其他选择CSV
,因为这CSV
是我的程序的要求。
我一直在研究某些东西,比如bindy
putapache.camel
我找不到足够的信息来了解如何使用它。
推荐什么?如果有人有一个很好的例子,bindy
我也不介意。
友好的问候,
技能线圈
是这样的:
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();
}
}
您可以使用apache poi从 JTable 生成 Excel 文件,然后使用此处的代码Converting XLS to CSV files Using Java to export XLS file to CSV file。
我其实是用这种方式生成CSV文件的
一个小的for循环怎么样?TableModel 提供所有必需的数据,例如行数、列数和数据。