java多表头导出excel表格_【每日一点】1. Java如何实现导出Excel单表头或多表头
时间: 2024-01-08 20:20:14 浏览: 108
Java导出数据到Excel文件中(支持多表头)
要实现Java导出Excel单表头或多表头,可以使用Apache POI库。下面是一个简单的示例代码,可以导出带有单表头和多表头的Excel文件:
```java
public static void exportExcel(List<List<String>> data, List<String> headers, String filePath) throws IOException {
Workbook workbook = new XSSFWorkbook();
Sheet sheet = workbook.createSheet();
// 创建单表头
Row headerRow = sheet.createRow(0);
for (int i = 0; i < headers.size(); i++) {
Cell cell = headerRow.createCell(i);
cell.setCellValue(headers.get(i));
}
// 创建多表头
if (data.size() > 0) {
Row subHeaderRow = sheet.createRow(1);
List<String> subHeaders = data.get(0);
for (int i = 0; i < subHeaders.size(); i++) {
Cell cell = subHeaderRow.createCell(i);
cell.setCellValue(subHeaders.get(i));
}
}
// 填充数据
int rowIndex = data.size() > 0 ? 2 : 1;
for (List<String> rowData : data) {
Row row = sheet.createRow(rowIndex++);
for (int i = 0; i < rowData.size(); i++) {
Cell cell = row.createCell(i);
cell.setCellValue(rowData.get(i));
}
}
// 输出文件
try (FileOutputStream outputStream = new FileOutputStream(filePath)) {
workbook.write(outputStream);
}
}
```
这个方法接受一个包含数据的二维列表、表头列表和输出文件路径的参数。它首先创建一个新的工作簿和一个新的工作表,然后填充单表头和多表头行,最后填充数据并将结果写入文件。注意,在创建多表头行时,我们需要检查数据列表是否为空,以避免出现数组越界异常。
阅读全文