easyexcel 3.1.2导出数据,java代码
时间: 2023-08-28 21:05:05 浏览: 49
下面是使用 easyexcel 3.1.2 导出数据的 Java 代码示例:
```java
// 创建 ExcelWriter 对象
ExcelWriter writer = EasyExcel.write("output.xlsx").build();
// 定义表头
List<List<String>> head = Arrays.asList(Arrays.asList("姓名", "年龄", "性别"));
// 定义数据行
List<List<Object>> data = Arrays.asList(
Arrays.asList("张三", 20, "男"),
Arrays.asList("李四", 25, "女"),
Arrays.asList("王五", 30, "男"));
// 写入数据
WriteSheet sheet = EasyExcel.writerSheet("Sheet1").head(head).build();
writer.write(data, sheet);
// 关闭 ExcelWriter 对象
writer.finish();
```
上面的代码会将数据导出到名为 "output.xlsx" 的 Excel 文件中,并包含一个名为 "Sheet1" 的工作表。该工作表包含一个表头和三行数据。你可以根据需要修改表头和数据行的内容。
相关问题
EasyExcel模板导出数据Java代码
以下是使用EasyExcel导出数据的Java代码示例:
```java
// 定义Excel表格的表头
List<List<String>> head = new ArrayList<>();
head.add(Arrays.asList("姓名", "年龄", "性别"));
// 定义Excel表格的数据
List<List<Object>> data = new ArrayList<>();
data.add(Arrays.asList("张三", 20, "男"));
data.add(Arrays.asList("李四", 25, "女"));
data.add(Arrays.asList("王五", 30, "男"));
// 导出Excel表格
ExcelWriter writer = null;
try {
// 创建ExcelWriter对象
writer = EasyExcel.write("output.xlsx").build();
// 写入表头和数据
WriteSheet sheet = EasyExcel.writerSheet("Sheet1").head(head).build();
writer.write(data, sheet);
// 完成写入操作
writer.finish();
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭ExcelWriter对象
if (writer != null) {
try {
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
上述代码中,我们首先定义了Excel表格的表头和数据,并利用EasyExcel的API将数据写入到Excel文件中。需要注意的是,我们需要在最后调用`writer.finish()`方法,以确保所有的数据都被写入到Excel文件中。另外,在使用完ExcelWriter对象后,我们需要调用`writer.close()`方法关闭对象,以释放资源。
easyexcel模板导出java代码
以下是EasyExcel模板导出的Java代码示例:
```java
// 1. 定义数据模型
@Data
public class User {
@ExcelProperty("姓名")
private String name;
@ExcelProperty("年龄")
private Integer age;
@ExcelProperty("性别")
private String gender;
}
// 2. 读取Excel模板
InputStream templateInputStream = new FileInputStream("template.xlsx");
ExcelReader excelReader = new ExcelReader(templateInputStream, null, new AnalysisEventListener<User>() {
List<User> userList = new ArrayList<>();
@Override
public void invoke(User user, AnalysisContext analysisContext) {
userList.add(user);
}
@Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
// 数据处理完毕后的回调函数
}
});
// 3. 填充数据并导出
List<User> userList = new ArrayList<>();
// TODO: 填充数据到userList中
ExcelWriter excelWriter = EasyExcel.write("output.xlsx", User.class).withTemplate(templateInputStream).build();
WriteSheet writeSheet = EasyExcel.writerSheet().build();
excelWriter.write(userList, writeSheet);
excelWriter.finish();
```
在以上代码中,我们首先定义了一个数据模型 `User`,然后通过 `ExcelReader` 读取Excel模板文件。在读取Excel时,我们通过 `AnalysisEventListener` 对读取到的数据进行处理,并将其保存到 `userList` 中。接着,我们将 `userList` 中的数据填充到Excel模板中,并将结果导出到 `output.xlsx` 文件中。
需要注意的是,在使用EasyExcel进行Excel导出时,我们需要使用 `EasyExcel.write` 创建一个 `ExcelWriter` 对象,并通过 `withTemplate` 指定Excel模板文件的输入流。然后,我们通过 `ExcelWriter.write` 将数据写入Excel文件中,并最终通过 `ExcelWriter.finish` 完成Excel导出操作。