easyexcel的FillWrapper写map数据
时间: 2024-03-29 08:34:12 浏览: 24
可以使用EasyExcel的FillWrapper来填充Map类型的数据。具体步骤如下:
1. 定义Map类型的数据结构,例如:
```java
Map<String, Object> dataMap = new HashMap<>();
dataMap.put("name", "张三");
dataMap.put("age", 20);
dataMap.put("gender", "男");
```
2. 定义FillWrapper对象,并设置map类型的数据源:
```java
FillWrapper fillWrapper = FillWrapper.builder().map(dataMap).build();
```
3. 在Excel模板中使用占位符(例如${name}、${age}、${gender})来表示需要填充的数据。
4. 使用EasyExcel的fill()方法来填充数据:
```java
EasyExcel.write(outputStream)
.withTemplate(templateFile)
.sheet()
.doFill(fillWrapper);
```
这样,EasyExcel就会根据占位符和数据源来填充Excel模板中的数据。
相关问题
easyexcel的FillWrapper无法填充List<Map>数据
EasyExcel的FillWrapper可以填充List<Map>类型的数据,具体步骤如下:
1. 定义List<Map>类型的数据结构,例如:
```java
List<Map<String, Object>> dataList = new ArrayList<>();
Map<String, Object> dataMap1 = new HashMap<>();
dataMap1.put("name", "张三");
dataMap1.put("age", 20);
dataMap1.put("gender", "男");
dataList.add(dataMap1);
Map<String, Object> dataMap2 = new HashMap<>();
dataMap2.put("name", "李四");
dataMap2.put("age", 25);
dataMap2.put("gender", "女");
dataList.add(dataMap2);
```
2. 定义FillWrapper对象,并设置list类型的数据源:
```java
FillWrapper fillWrapper = FillWrapper.builder().list(dataList).build();
```
3. 在Excel模板中使用占位符(例如${name}、${age}、${gender})来表示需要填充的数据。
4. 使用EasyExcel的fill()方法来填充数据:
```java
EasyExcel.write(outputStream)
.withTemplate(templateFile)
.sheet()
.doFill(fillWrapper);
```
这样,EasyExcel就会根据占位符和数据源来填充Excel模板中的数据。注意,在Excel模板中使用占位符时需要使用“{{}}”来包裹字段名,例如“{{name}}”、“{{age}}”、“{{gender}}”。
java EasyExcel 批量写数据
使用 EasyExcel 批量写数据非常简单,以下是示例代码:
```java
// 定义数据列表
List<List<Object>> dataList = new ArrayList<>();
for (int i = 0; i < 10; i++) {
List<Object> rowList = new ArrayList<>();
rowList.add("姓名" + i);
rowList.add(i);
dataList.add(rowList);
}
// 写入 Excel 文件
String fileName = "test.xlsx";
String sheetName = "Sheet1";
ExcelWriter excelWriter = EasyExcel.write(fileName).build();
WriteSheet writeSheet = EasyExcel.writerSheet(sheetName).build();
excelWriter.write(dataList, writeSheet);
excelWriter.finish();
```
首先,我们定义了一个数据列表 `dataList`,其中每个元素都是一个行数据列表。接着,我们通过 EasyExcel 的 `write` 方法创建了一个 ExcelWriter 对象,并指定要写入的文件名。
然后,我们通过 `writerSheet` 方法创建了一个 WriteSheet 对象,并指定要写入的工作表名称。最后,我们调用 `write` 方法将数据列表写入到指定的工作表中,并调用 `finish` 方法完成写入操作。
需要注意的是,EasyExcel 支持的数据类型包括基本数据类型、String 和 Date 等常见类型,建议尽量使用这些类型。如果需要写入其他类型的数据,可以先将数据转换为支持的类型再进行写入。