日期:2014-05-20  浏览次数:20802 次

poi 高级问题 望看到的人快来帮助
解析两个sheet页面
FileInputStream fin = new FileInputStream(filePath);
XSSFWorkbook workbook = new XSSFWorkbook(fin); // 创建工作薄 
走到第二行就出
java.lang.IllegalStateException: The hyperlink for cell G86 references relation rId88, but that didn't exist!
at org.apache.poi.xssf.usermodel.XSSFHyperlink.<init>(XSSFHyperlink.java:71)
at org.apache.poi.xssf.usermodel.XSSFSheet.initHyperlinks(XSSFSheet.java:205)
at org.apache.poi.xssf.usermodel.XSSFSheet.read(XSSFSheet.java:158)
at org.apache.poi.xssf.usermodel.XSSFSheet.onDocumentRead(XSSFSheet.java:130)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.onDocumentRead(XSSFWorkbook.java:286)
at org.apache.poi.POIXMLDocument.load(POIXMLDocument.java:159)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:207)
at com.dfb.Test.exlToDB(Test.java:22)
求救
------解决方案--------------------
在导入excel 2007时当单元格内超链接内容中同时含有#$%^四个字符中的任意3个时就会在WorkbookFactory.create(fis);产生一个WorkBook对象时报java.lang.IllegalStateException: The hyperlink for cell A2 references relation rId2, but that didn't exist! 
避免这个异常的方法时,1.超链接内不同时使用#$%^中任意3 个。2.取消此时的超链接

from:http://xiaolng.iteye.com/blog/1748156
------解决方案--------------------
应该是数据格式问题。