Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java XLSX文件读取错误_Java_Spring_Apache Poi_Apache Camel - Fatal编程技术网

Java XLSX文件读取错误

Java XLSX文件读取错误,java,spring,apache-poi,apache-camel,Java,Spring,Apache Poi,Apache Camel,我正在尝试读取xlsx文件以获取数据表单文件 但是我的代码会生成类似这样的代码 apache poi不工作或无法帮助读取xlsx文件 任何人都可以告诉我需要做什么来解决这个错误 或者以其他方式读取java中的xlsx文件 Exception in thread "main" java.lang.IllegalStateException: Zip File is closed at org.apache.poi.openxml4j.util.ZipFileZipEntrySource.g

我正在尝试读取xlsx文件以获取数据表单文件 但是我的代码会生成类似这样的代码

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)

如果您想读取xlsx文件。我们必须使用

XSSFWorkbook workBook = new XSSFWorkbook(inputStream);

如果您想读取xlsx文件。我们必须使用

XSSFWorkbook workBook = new XSSFWorkbook(inputStream);

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

而不是给予

OPCPackage pkg=OPCPackage.openfilename

你可以给


OPCPackage pkg=OPCPackage.openabsolutePath+/+文件名

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

而不是给予

OPCPackage pkg=OPCPackage.openfilename

你可以给


OPCPackage pkg=OPCPackage.openabsolutePath+/+文件名

你也应该发布一段代码。没有代码很难确定,但我的直觉是你正在做的是打开、关闭、读取,这是不允许的。你也应该发布一段代码。没有代码很难确定,但我的直觉是你正在做的是打开、关闭、读取,这是不允许的。我也有这个问题,这把它修好了!在不同的机器上运行代码怎么样?使用绝对路径是否是一个好的实践。我也有这个问题,这个问题已经解决了!在不同的机器上运行代码怎么样?使用绝对路径是否是一种好的做法。