优化 java poi 打开大文件速度
对于读取大文件时速度缓慢的情况,以下是采用 java poi 进行优化的两种方法:
方法一:
利用 xlsx-streamer
xlsx-streamer 采用分段缓存方式加载数据,将大文件分段读取到内存中,避免一次性将整个文件加载到对象中,从而有效提升性能。
引入依赖:
com.monitorjbl xlsx-streamer2.1.0
示例代码:
public static void readlagerexcel(file file) throws exception {
inputstream inputstream = new fileinputstream(file);
try (workbook workbook = streamingreader.builder()

.rowcachesize(10 * 10)
.buffersize(1024 * 4)
.open(inputstream)) {
// ...
}
}方法二:
采用 easyexcel
easyexcel 是基于 poi 封装优化的大数据量 excel 读写库,可以快速实现 excel 的读写,而且不会出现内存溢出问题。
引入依赖:
com.alibaba easyexcel3.1.0
示例代码:
封装对象读取:
public static void readexcelbyeasyexcel(file file) {
list exceldatalist = easyexcel.read(file)
.head(exceldata.class)
.sheet(0)
.doreadsync();
// ...
} 不封装对象读取:
public static void readExcelByEasyExcel1(File file) {
List









