2011-09-07 149 views
0

我想读一个Excel使用的代码Apache的网站的话,而不是数字数据文件中读取http://poi.apache.org/spreadsheet/how-to.html#xssf_sax_api错误的Excel(.xlsx)格式文件使用Apache POI XSSF eventmodel只有

我得到以下错误:

Processing new sheet: 

A1 - Have a nice day 
Exception in thread "main" java.lang.NumberFormatException: For input string: "Have a nice day" 
    at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1111) 
    at ExcelExtract.processAllSheets(ExcelExtract.java:48) 
    at ExcelExtract.main(ExcelExtract.java:119) 
Caused by: java.lang.NumberFormatException: For input string: "Have a nice day" 
    at java.lang.NumberFormatException.forInputString(Unknown Source) 
    at java.lang.Integer.parseInt(Unknown Source) 
    at java.lang.Integer.parseInt(Unknown Source) 
    at ExcelExtract$SheetHandler.endElement(ExcelExtract.java:99) 
    at org.apache.xerces.parsers.SAXParser.endElement(SAXParser.java:1403) 
    at org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.java:1550) 
    at org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:1204) 
    at org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381) 
    at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098) 
    ... 2 more 

还有什么方法可以使用poi xssf事件模型只读取xlsx文件,而不使用xerces.jar?请告知是否有其他示例代码可用。

回答

0

这个例外似乎是从你自己的代码来 - ExcelExtract看起来是你的程序,而不是POI

的核心位

它看起来像你处理一个包含字符串的单元格,如果它包含一个数。这是行不通的 - 你需要检查单元格的类型,并适当地处理内容。如果没有首先确保它是一个,你不能仅仅将一些东西解析为一个int!

看起来不是一个POI问题,虽然

相关问题