关于org.apache.poi 导出excel时引发的No such file or directory
2021-03-03 02:28
标签:lan mic 存在 app excel导出 代码 time rgb 技术 原因:这个问题是指 文件目录不存在 poi默认将导出的excel导出到系统的临时目录 我直接跟源码贴图 重点解决方法: 我直接粘贴 最终解决的代码了 非serverlet应用用这个 关于org.apache.poi 导出excel时引发的No such file or directory 标签:lan mic 存在 app excel导出 代码 time rgb 技术 原文地址:https://www.cnblogs.com/af826/p/14289275.htmljava.lang.RuntimeException: java.io.IOException: No such file or directory
at org.apache.poi.xssf.streaming.SXSSFWorkbook.createAndRegisterSXSSFSheet(SXSSFWorkbook.java:569)
at org.apache.poi.xssf.streaming.SXSSFWorkbook.createSheet(SXSSFWorkbook.java:558
)
首先跟进这个方法
//首先跟进这个方法
public Sheet createSheet(String sheetname){
return createAndRegisterSXSSFSheet(_wb.createSheet(sheetname));
}
继续跟进
public Sheet createSheet(String sheetname){
return createAndRegisterSXSSFSheet(_wb.createSheet(sheetname));
}SXSSFSheet createAndRegisterSXSSFSheet(XSSFSheet xSheet){
SXSSFSheet sxSheet=null;
try
{
sxSheet=new SXSSFSheet(this,xSheet);
}
catch (IOException ioe) {
throw new RuntimeException(ioe);
} registerSheetMapping(sxSheet,xSheet);
return sxSheet;
}
//设置临时目录解决 系统回收默认 临时文件
File file = new File("/mnt/soft/spring-boot/tomcat_basedir");
file.mkdirs();
TempFile.setTempFileCreationStrategy(new TempFile.DefaultTempFileCreationStrategy(file));
把这段代码放到
Sheet sh = wb.createSheet("sheet1");
这个之前就ok了
当然网上的普遍做法是tomcat根目录创建temp 文件夹而这种做法也只是针对serverlet容器内调用poi输出 ,而如果你不是那就按照我的方式来吧
上一篇:重装系统之后出现https:/ / logincdn.msauth.net/shared/1.0/content/js/ConvergedLogin_PCore_xxvbETmiVPe1AsI9xwH
文章标题:关于org.apache.poi 导出excel时引发的No such file or directory
文章链接:http://soscw.com/index.php/essay/59315.html