0

我已通过在终端中使用以下命令将.xls文件转换为.ods

COMMAND : soffice --headless --convert-to ods abcd.xls

转换后,我无法使用jOpenDocument1.3.jarSpreadSheet API 读取fileName.ods。当我尝试读取 .ods 文件时,它会抛出NullPointer Exception

我在 Ubuntu 平台上工作,如果我使用LibreOffice将.xls文件转换为.ods ,那么它工作正常,但如果我使用soffice终端将它转换,那么它会抛出异常!

有没有办法使用命令行转换文件,以便 Java 代码能够正确读取它。

我正在使用下面的代码来读取转换后的fileName.ods文件。

File file = new File(path);
String sheetName = "SheetName"; // spread Sheet Name
Sheet sheet = SpreadSheet.createFromFile(file).getSheet(sheetName);

createFromFile ” 给出 NullPointer 异常

ava.lang.NullPointerException
    at org.jopendocument.dom.ODPackage.getODDocument(Unknown Source)
    at org.jopendocument.dom.ODPackage.getSpreadSheet(Unknown Source)
    at org.jopendocument.dom.spreadsheet.SpreadSheet.createFromFile(Unknown Source)
    at com.thales.dbtool.controller.DBManageController.getUiParamsFromExcel(DBManageController.java:1316)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137)
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandl

任何帮助将不胜感激。

4

0 回答 0