利用poi读取excel2007时报异常

奋斗的_小鸟 2012-07-25 01:53:53
org.apache.poi.openxml4j.exceptions.InvalidOperationException: Can't open the specified file: 'C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\poifiles\poi-ooxml-1632308685.tmp'
at org.apache.poi.openxml4j.opc.ZipPackage.<init>(ZipPackage.java:102)
at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:199)
at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:178)
at org.apache.poi.util.PackageHelper.open(PackageHelper.java:53)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:176)
Truncated. see log file for complete stacktrace

异常发生的地方在这段代码中 InputStream is = new FileInputStream(fileAddr);
Workbook workBook = null;
if (file.getFileExt().endsWith("xls")) {
workBook = new HSSFWorkbook(is);
}else if (file.getFileExt().endsWith("xlsx")) {
//if (!is.markSupported()) {
//is = new PushbackInputStream(is, 8);
//}
//if (!POIXMLDocument.hasOOXMLHeader(is)) {
workBook = new XSSFWorkbook(is);
//}
}
...全文
1740 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
7047bf472f32a076 2013-05-30
  • 打赏
  • 举报
回复
org.apache.poi.openxml4j.exceptions.InvalidOperationException怎么问题怎么解决啊
柏澄君 2013-01-25
  • 打赏
  • 举报
回复
引用 8 楼 MMUZHI 的回复:
引用 7 楼 uyerp 的回复:引用 5 楼 MMUZHI 的回复:我读取2007是报的内存溢出啊 请问怎么解决啊 内存溢出可以用eventmodel读取试试,不过能读不能写,适用只读的情况下; 至于楼主的问题,不晓得,也没碰到过。 你们导入的是标准的excel2007的文件?换poi最新版本试试。 用的就是POI ,数据较大 ,刚开始读就内存溢出了 ……
POI版本是最新3.9的啊
柏澄君 2013-01-25
  • 打赏
  • 举报
回复
引用 7 楼 uyerp 的回复:
引用 5 楼 MMUZHI 的回复:我读取2007是报的内存溢出啊 请问怎么解决啊 内存溢出可以用eventmodel读取试试,不过能读不能写,适用只读的情况下; 至于楼主的问题,不晓得,也没碰到过。 你们导入的是标准的excel2007的文件?换poi最新版本试试。
用的就是POI ,数据较大 ,刚开始读就内存溢出了
搞什么哦 2013-01-24
  • 打赏
  • 举报
回复
引用 5 楼 MMUZHI 的回复:
我读取2007是报的内存溢出啊 请问怎么解决啊
内存溢出可以用eventmodel读取试试,不过能读不能写,适用只读的情况下; 至于楼主的问题,不晓得,也没碰到过。 你们导入的是标准的excel2007的文件?换poi最新版本试试。
果果_123 2013-01-24
  • 打赏
  • 举报
回复
是不是你打开了一个Excl文件啊 再上传读的。。
柏澄君 2013-01-23
  • 打赏
  • 举报
回复
我读取2007是报的内存溢出啊 请问怎么解决啊
「已注销」 2012-10-23
  • 打赏
  • 举报
回复
碰到了lz一样的问题,各种一样啊有木有!!!想问下lz怎么解决地……
奋斗的_小鸟 2012-07-25
  • 打赏
  • 举报
回复
还有看到这样写的 workBook = new XSSFWorkbook(fileAddr);
这样也报错 org.apache.poi.openxml4j.exceptions.InvalidOperationException: Can't open the specified file: 'E:\Workspaces\Prp_Undwrt\piccallweb\excel\1343196674078.xlsx'
at org.apache.poi.openxml4j.opc.ZipPackage.<init>(ZipPackage.java:102)
at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:199)
at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:178)
at org.apache.poi.POIXMLDocument.openPackage(POIXMLDocument.java:62)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:188)
Truncated. see log file for complete stacktrace
奋斗的_小鸟 2012-07-25
  • 打赏
  • 举报
回复
改为了 workBook = new XSSFWorkbook(OPCPackage.open(is));
这样的话也报了个错
org.apache.poi.openxml4j.exceptions.InvalidFormatException: Package should contain a content type part [M1.13]
at org.apache.poi.openxml4j.opc.ZipPackage.getPartsImpl(ZipPackage.java:147)
at org.apache.poi.openxml4j.opc.OPCPackage.getParts(OPCPackage.java:585)
at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:222)
at jsp_servlet.__excel_upload._jspService(__excel_upload.java:158)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
Truncated. see log file for complete stacktrace
brightyq 2012-07-25
  • 打赏
  • 举报
回复
不是要操作excel2007吗?怎么打开的是 ”poi-ooxml-1632308685.tmp“ .tmp后缀的?

62,634

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧