EasyExcel中WriteSheet循环写入
时间: 2024-02-22 17:00:46 浏览: 38
EasyExcel中可以通过循环写入的方式批量写入数据到Excel中,可以按照以下步骤进行操作:
1. 创建Workbook对象并指定输出路径
```java
String fileName = "output.xlsx";
String filePath = "D:/";
File file = new File(filePath + fileName);
if (!file.exists()) {
file.createNewFile();
}
OutputStream outputStream = new FileOutputStream(file);
ExcelWriter excelWriter = EasyExcel.write(outputStream).build();
```
2. 定义数据集合并设置每个Sheet的名称
```java
List<List<Object>> sheet1Data = new ArrayList<>();
List<List<Object>> sheet2Data = new ArrayList<>();
List<List<Object>> sheet3Data = new ArrayList<>();
// 在数据集合中添加数据
List<List<Object>> sheetDataList = new ArrayList<>();
sheetDataList.add(sheet1Data);
sheetDataList.add(sheet2Data);
sheetDataList.add(sheet3Data);
List<String> sheetNames = new ArrayList<>();
sheetNames.add("Sheet1");
sheetNames.add("Sheet2");
sheetNames.add("Sheet3");
```
3. 循环创建WriteSheet对象,并将数据写入到每个Sheet中
```java
for (int i = 0; i < sheetNames.size(); i++) {
WriteSheet writeSheet = EasyExcel.writerSheet(i, sheetNames.get(i)).build();
excelWriter.write(sheetDataList.get(i), writeSheet);
}
```
4. 最后关闭流和excelWriter对象
```java
excelWriter.finish();
outputStream.close();
```
这样就可以通过循环写入的方式批量写入数据到Excel中了。在循环过程中,可以根据实际需求创建多个WriteSheet对象,并指定每个Sheet的名称和数据。