EasyExcel 写excel 并保存excel
时间: 2024-09-13 21:10:57 浏览: 83
EasyExcel 是一个基于Java的简单、快速、占用内存小的读写Excel工具库,它提供了对Excel文件的高效读写操作。使用EasyExcel可以轻松地将数据写入Excel文件,并保存到磁盘上。以下是一个简单的使用EasyExcel写入Excel并保存文件的示例:
```java
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.metadata.fill.FillConfig;
import com.alibaba.excel.write.style.column.SimpleColumnWidthStyleStrategy;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class EasyExcelWriteExample {
public static void main(String[] args) {
// 文件路径
String fileName = "example.xlsx";
// 准备写入的数据
List<Map<String, String>> data = new ArrayList<>();
Map<String, String> row1 = new HashMap<>();
row1.put("name", "张三");
row1.put("age", "20");
Map<String, String> row2 = new HashMap<>();
row2.put("name", "李四");
row2.put("age", "23");
data.add(row1);
data.add(row2);
// 写入Excel并保存
// 使用withFillConfig方法可以设置填充配置,比如自适应列宽
WriteSheet writeSheet = EasyExcel.writerSheet("模板")
.registerWriteHandler(new SimpleColumnWidthStyleStrategy(20)) // 设置列宽策略,这里是将列宽设置为20个字符
.build();
EasyExcel.write(fileName)
.sheet("数据列表") // 设置工作表名
.doFill(data, FillConfig.builder().forceNewRow(Boolean.TRUE).build(), writeSheet); // 使用doFill方法写入数据
}
}
```
在这个示例中,首先定义了要写入的文件名`fileName`。然后创建了一个包含数据的`List<Map<String, String>>`,其中每个`Map`代表Excel中的一个行数据。接下来,创建了一个`WriteSheet`对象,并通过`withFillConfig`方法设置了填充配置,这里使用了`SimpleColumnWidthStyleStrategy`来设置列宽策略。最后,使用`EasyExcel.write()`方法创建了一个写入器,并调用`doFill`方法将数据填充到指定的工作表中。
需要注意的是,这个示例是一个简化的版本,实际使用中可能需要根据具体需求调整配置和数据模型。
阅读全文