public void export() {
Workbook workbook = new XSSFWorkbook();
// 查询数据data 导出标头信息可以用as转换成中文名称
exportToExcelSheet(workbook,data,"sheet名称");
// 多次调用 exportToExcelSheet
// 将工作簿写入文件
try (FileOutputStream fileOut = new FileOutputStream("D://WorkBook.xlsx")) {
workbook.write(fileOut);
} catch (IOException e) {
e.printStackTrace();
}
// 关闭工作簿
try {
workbook.close();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 组装sheet页数据
**/
public static void exportToExcelSheet(Workbook workbook, List<JSONObject> data, String sheetName) {
Sheet sheet = workbook.createSheet(sheetName);
// 如果数据不为空
if (!data.isEmpty()) {
// 获取第一个JSON对象的所有键,作为表头
JSONObject firstObject = data.get(0);
Row headerRow = sheet.createRow(0);
int columnCount = 0;
for (String key : firstObject.keySet()) {
Cell cell = headerRow.createCell(columnCount++);
cell.setCellValue(key);
}
// 遍历数据列表,为每行数据创建一行
int rowCount = 1;
for (JSONObject jsonObject : data) {
Row row = sheet.createRow(rowCount++);
columnCount = 0;
for (String key : firstObject.keySet()) { // 使用相同的键顺序
Cell cell = row.createCell(columnCount++);
cell.setCellValue(jsonObject.getStr(key, ""));
}
}
}
}
EasyExcel 多sheet页导出
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...