激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專(zhuān)注于服務(wù)器技術(shù)及軟件下載分享
分類(lèi)導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - Java教程 - POI導(dǎo)出Excel報(bào)錯(cuò)No such file or directory的解決方法

POI導(dǎo)出Excel報(bào)錯(cuò)No such file or directory的解決方法

2021-02-20 11:49劉水鏡 Java教程

這篇文章主要為大家詳細(xì)介紹了POI導(dǎo)出Excel報(bào)錯(cuò)No such file or directory的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

場(chǎng)景重現(xiàn)

Apache POI
Linux
Tomcat

如上所示,當(dāng)時(shí)在linux+tomcat的環(huán)境下,使用apache的poi導(dǎo)出excel的時(shí)候就會(huì)報(bào)“No such file or directory”的錯(cuò)誤。

錯(cuò)誤信息

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
java.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)
    at com.app.util.ExcelIOUtil.write(ExcelIOUtil.java:46)
    at com.app.controllers.DrivingSchoolController.download(DrivingSchoolController.java:106)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.mvc.invoke.ActionInvoker.invoke(ActionInvoker.java:75)
    at com.mvc.MvcDispatcher.service(MvcDispatcher.java:119)
    at com.mvc.MvcFilter.doFilter(MvcFilter.java:67)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    at org.apache.tomcat.util.net.AprEndpoint$SocketWithOptionsProcessor.run(AprEndpoint.java:1810)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)

解決方案

咱們先說(shuō)解決方案,因?yàn)榻鉀Q的辦法非常簡(jiǎn)單,只需要在tomcat的根目錄下建一個(gè)“temp”的文件夾即可。

錯(cuò)誤原因

之所以會(huì)出現(xiàn)這個(gè)錯(cuò)誤,是因?yàn)閜oi默認(rèn)將導(dǎo)出的excel導(dǎo)出到系統(tǒng)的臨時(shí)目錄,而當(dāng)時(shí)那個(gè)linux的tomcat下不存在那個(gè)temp文件夾,所以就找不到目錄了。其實(shí)不管是在什么系統(tǒng)環(huán)境下,只要tomcat根目錄沒(méi)有temp都會(huì)出現(xiàn)這個(gè)情況。看看下面poi的源碼你就明白了。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public void write(OutputStream stream) throws IOException{
 for (SXSSFSheet sheet : _xFromSxHash.values()){
   sheet.flushRows();
   }
  //保存到臨時(shí)目錄
  File tmplFile = File.createTempFile("poi-sxssf-template", ".xlsx");
  tmplFile.deleteOnExit();
  FileOutputStream os = new FileOutputStream(tmplFile);
  _wb.write(os);
  os.close();
 
  //Substitute the template entries with the generated sheet data files
  injectData(tmplFile, stream);
  tmplFile.delete();
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://blog.csdn.net/liushuijinger/article/details/52511167

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 午夜精品区 | 欧美色淫| caoporn国产一区二区 | 91高清免费在线观看 | 黄色免费播放网站 | 欧美性受xxxxxx黑人xyx性爽 | 毛片视频网站在线观看 | 色综合久久久久久久久久久 | chengrenzaixian| 91精品国产一区二区在线观看 | 色婷婷av一区二区三区久久 | 中文字幕精品久久 | 亚洲人成中文字幕在线观看 | 日本不卡一区在线观看 | 久久久久久久久久久影视 | 7777在线视频免费播放 | 欧美国产永久免费看片 | 日本一级黄色大片 | 韩国精品一区二区三区四区五区 | 国产色视频一区 | 一级尻逼视频 | 九九色精品| 农村少妇吞精夜夜爽视频 | 日韩精品羞羞答答 | 国产美女视频一区二区三区 | 久久久久免费电影 | 国产自在线 | av国产免费 | 国产精品一区视频 | 在线1区| 欧美另类在线视频 | 亚洲婷婷日日综合婷婷噜噜噜 | 黄色毛片一级视频 | 黄污污网站 | 亚洲国产精品高潮呻吟久久 | 中国美女一级黄色片 | 免费一级特黄毛片 | 国产99免费 | 中文字幕11 | 欧美三级美国一级 | 人成免费a级毛片 |