使用poi将包含头部的JTable保存到Excel可以按照以下步骤进行:
XSSFWorkbook
或HSSFWorkbook
类来创建。createSheet
方法创建。createRow
方法创建。createCell
方法创建单元格。createRow
方法创建行,然后使用createCell
方法创建单元格,并将对应的数据设置为单元格的值。write
方法将文档对象写入文件或输出流。下面是一个示例代码:
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import javax.swing.*;
import java.io.FileOutputStream;
import java.io.IOException;
public class JTableToExcel {
public static void main(String[] args) {
JTable table = new JTable(); // 假设已经有一个包含头部的JTable对象
try (Workbook workbook = new XSSFWorkbook()) {
Sheet sheet = workbook.createSheet("Sheet1");
// 创建表头行
Row headerRow = sheet.createRow(0);
TableColumnModel columnModel = table.getColumnModel();
for (int i = 0; i < columnModel.getColumnCount(); i++) {
String headerValue = columnModel.getColumn(i).getHeaderValue().toString();
Cell cell = headerRow.createCell(i);
cell.setCellValue(headerValue);
}
// 写入数据行
for (int row = 0; row < table.getRowCount(); row++) {
Row dataRow = sheet.createRow(row + 1);
for (int col = 0; col < table.getColumnCount(); col++) {
Object value = table.getValueAt(row, col);
Cell cell = dataRow.createCell(col);
if (value != null) {
cell.setCellValue(value.toString());
}
}
}
// 保存Excel文件
try (FileOutputStream outputStream = new FileOutputStream("output.xlsx")) {
workbook.write(outputStream);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
这段代码使用了Apache POI库来操作Excel文件,通过遍历JTable的列头和数据行,将数据写入Excel中。最后将Excel文件保存到指定的文件路径中。
腾讯云相关产品和产品介绍链接地址: