我需要从Java读取XLS文件。为此,我开始评估jXLS框架。不幸的是,我在尝试在XLS reader reference页面上运行示例时仍然遇到异常:
Exception in thread "main" net.sf.jxls.reader.XLSDataReadException: Can't read cell A4 on Sheet1 spreadsheet
at net.sf.jxls.reader.SimpleBlockReaderImpl.read(SimpleBlockReaderImpl.java:61)
at net.sf.jxls.reader.XLSSheetReaderImpl.read(XLSSheetReaderImpl.java:25)
at net.sf.jxls.reader.XLSReaderImpl.readSheet(XLSReaderImpl.java:45)
at net.sf.jxls.reader.XLSReaderImpl.read(XLSReaderImpl.java:31)
at com.oracle.sk.jxls.App.go(App.java:46)
at com.oracle.sk.jxls.App.main(App.java:19)
我对原作所做的更改是:
departments.xml和departmentdata.xls都直接来自XLS reader reference page。 Department.java和Employee.java是从Simple beans页面下载的(在jXLS网站上也是如此)。如有必要,我可以提供完整的Maven项目。
拜托,有没有人有线索,为什么它不起作用?
提前谢谢。
答案 0 :(得分:2)
我知道它已经有一段时间了,但我做了一些调试搜索来回答这个问题,实际上我找到了一些东西。
从departments.xml
您看到A4单元格被映射到department.chief.name
,但是当它初始化您的Department对象时,主要属性为null,所以在Department no-args构造函数中你应该这样做像chief = new Employee()
现在应该可以了。