easyexcel纵表导入导出
时间: 2023-10-18 09:17:17 浏览: 102
easy-excel导入导出
EasyExcel 是一个基于 Java 的简单、省内存的操作 Excel 的工具包,可以方便地进行 Excel 文件的读写操作,支持大数据量的导入导出。下面是纵表导入导出的示例代码:
1. 导入纵表数据
```java
// 读取 Excel 文件
File file = new File("test.xlsx");
ExcelReader excelReader = EasyExcel.read(file).build();
// 读取指定的 Sheet
ReadSheet readSheet = EasyExcel.readSheet(0).build();
excelReader.read(readSheet);
// 读取数据
List<List<String>> dataList = new ArrayList<>();
excelReader.read(readSheet);
List<Sheet> sheetList = excelReader.getSheets();
for (Sheet sheet : sheetList) {
List<List<String>> sheetDataList = sheet.getHeadMap().values().stream().map(Head::getHeadNameList).collect(Collectors.toList());
dataList.addAll(sheetDataList);
}
// 关闭 ExcelReader
excelReader.finish();
```
2. 导出纵表数据
```java
// 准备数据
List<List<String>> dataList = new ArrayList<>();
List<String> headerList = Arrays.asList("姓名", "年龄", "性别");
dataList.add(headerList);
List<String> data1 = Arrays.asList("张三", "20", "男");
List<String> data2 = Arrays.asList("李四", "22", "女");
dataList.add(data1);
dataList.add(data2);
// 导出 Excel 文件
File file = new File("test.xlsx");
ExcelWriter excelWriter = EasyExcel.write(file).build();
WriteSheet writeSheet = EasyExcel.writerSheet(0).build();
excelWriter.write(dataList, writeSheet);
excelWriter.finish();
```
以上代码示例中,数据都是存储在 List 中的,如果需要从数据库中读取数据,可以使用 EasyExcel 的读取数据库功能。
阅读全文