easyExcel文件导出
时间: 2023-11-04 22:02:25 浏览: 89
1. 引入easyExcel依赖
在pom.xml文件中添加以下依赖:
```
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.2.10</version>
</dependency>
```
2. 创建实体类
根据需要导出的数据,创建相应的实体类。例如,需要导出学生信息,可以创建一个名为Student的实体类:
```
public class Student {
private String name;
private Integer age;
private String gender;
private String grade;
// 省略getter和setter方法
}
```
3. 创建数据源
在代码中创建需要导出的数据源,可以使用List集合存储数据。例如,创建一个存储学生信息的List集合:
```
List<Student> dataList = new ArrayList<>();
dataList.add(new Student("Tom", 20, "Male", "Grade 1"));
dataList.add(new Student("Lucy", 19, "Female", "Grade 2"));
dataList.add(new Student("Jack", 21, "Male", "Grade 3"));
```
4. 创建ExcelWriter对象
使用ExcelWriter对象将数据写入到Excel文件中。在创建ExcelWriter对象时,需要指定Excel文件的输出流和Sheet的名称。例如,创建一个名为“学生信息”的Sheet:
```
OutputStream out = new FileOutputStream("students.xlsx");
ExcelWriter writer = EasyExcel.write(out).sheet("学生信息").build();
```
5. 写入表头
在Excel文件中写入表头,可以在代码中创建一个String数组,存储表头信息,然后使用ExcelWriter对象的writeRow()方法写入表头。例如,创建一个存储表头信息的String数组:
```
String[] headers = {"姓名", "年龄", "性别", "年级"};
writer.writeRow(new Sheet(0, 0, headers), new WriteCellStyle());
```
6. 写入数据
使用ExcelWriter对象的write()方法将数据写入到Excel文件中。在写入数据时,可以使用for循环遍历数据源中的所有数据,并将每条数据写入到Excel文件中。例如,将学生信息写入到Excel文件中:
```
Sheet sheet = new Sheet(1, 0);
sheet.setClazz(Student.class);
writer.write(dataList, sheet);
```
7. 关闭ExcelWriter对象
在数据写入完成后,需要关闭ExcelWriter对象。例如:
```
writer.finish();
```
完整代码示例:
```
public static void main(String[] args) throws IOException {
// 创建实体类
public class Student {
private String name;
private Integer age;
private String gender;
private String grade;
// 省略getter和setter方法
}
// 创建数据源
List<Student> dataList = new ArrayList<>();
dataList.add(new Student("Tom", 20, "Male", "Grade 1"));
dataList.add(new Student("Lucy", 19, "Female", "Grade 2"));
dataList.add(new Student("Jack", 21, "Male", "Grade 3"));
// 创建ExcelWriter对象
OutputStream out = new FileOutputStream("students.xlsx");
ExcelWriter writer = EasyExcel.write(out).sheet("学生信息").build();
// 写入表头
String[] headers = {"姓名", "年龄", "性别", "年级"};
writer.writeRow(new Sheet(0, 0, headers), new WriteCellStyle());
// 写入数据
Sheet sheet = new Sheet(1, 0);
sheet.setClazz(Student.class);
writer.write(dataList, sheet);
// 关闭ExcelWriter对象
writer.finish();
}
```
阅读全文
相关推荐
















