XLSX文件读取错误

时间:2013-06-06 13:05:45

标签: java spring apache-poi apache-camel

我正在尝试读取xlsx文件以获取数据表单文件 但是我的代码像这样产生了eroor

apache poi无法正常工作或帮助阅读xlsx文件
任何可以告诉我需要做什么来解决这个错误
或以其他方式在java中读取xlsx文件

Exception in thread "main" java.lang.IllegalStateException: Zip File is closed
    at org.apache.poi.openxml4j.util.ZipFileZipEntrySource.getEntries(ZipFileZipEntrySource.java:45)
    at org.apache.poi.openxml4j.opc.ZipPackage.getPartsImpl(ZipPackage.java:161)
    at org.apache.poi.openxml4j.opc.OPCPackage.getParts(OPCPackage.java:662)
    at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:223)
    at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:186)
    at ExampleEventUserModel.processOneSheet(ExampleEventUserModel.java:18)
    at ExampleEventUserModel.main(ExampleEventUserModel.java:115)

2 个答案:

答案 0 :(得分:6)

通过提供绝对路径而不仅仅是文件名,我遇到了类似的问题和修复

而不是给予

OPCPackage pkg = OPCPackage.open(filename);

你可以提供

OPCPackage pkg = OPCPackage.open(absolutePath +“/”+ filename);

答案 1 :(得分:1)

如果要阅读xlsx文件。我们必须使用

XSSFWorkbook workBook = new XSSFWorkbook(inputStream);