导入具有小行高度的Excel文件(在错误的位置找到行/单元格记录)

时间:2011-11-18 17:34:39

标签: grails apache-poi grails-plugin

我在grails中使用“Excel Import& Export(Apache POI)”插件将我的Excel数据导入我的系统。如果我继续导出,则会收到以下错误:

java.lang.RuntimeException: row/cell records found in the wrong place
    at org.apache.poi.hssf.model.InternalSheet.<init>(InternalSheet.java:203)
    at org.apache.poi.hssf.model.InternalSheet.createSheet(InternalSheet.java:162)
    at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:274)
    at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:188)
    at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:305)
    at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:286)
    at org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:60)
    at org.apache.poi.ss.usermodel.WorkbookFactory$create.call(Unknown Source)
    at org.grails.plugins.excelimport.AbstractExcelImporter.read(AbstractExcelImporter.groovy:38)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)

我看到错误来自Apache-poi,但我不知道如何在我的应用程序中处理它。如果我打开excel文件并将行高设置为任何合理的大小(即0.18“),则错误消失。之前的高度为0.02”。

这是Apache-poi的错误还是我能以某种方式处理它?<​​/ p>

1 个答案:

答案 0 :(得分:1)

根据Microsoft Binary File Format Validator,我的档案无效。使用MS Excel打开文件并重新保存它解决了这个问题。