POI操作excel workbook对象创建不出来,程序挂在那不走了!
使用POI来导入excel的数据到数据库
但是我在创建workbook对象的时候程序不走了,停在那了,debug也看不出来什么道道。
郁闷了,平常一直做POI,但是这还是第一次!
请大家给我看看啥问题!
代码:
InputStream file = new FileInputStream(excelFile);//excelFile是文件路径 if (excelFile.substring(excelFile.lastIndexOf(".")).equals(".xls")) { System.out.println("==");//能打印出来 wb=this.createWorkbook(file); //wb=new XSSFWorkbook(file); System.out.println(wb);//打印不出来
//创建Workbook public Workbook createWorkbook(InputStream in) throws Exception { if (!in.markSupported()) { in = new PushbackInputStream(in, 8); System.out.println(1); } if (POIFSFileSystem.hasPOIFSHeader(in)) { System.out.println(2); return new HSSFWorkbook(in); } if (POIXMLDocument.hasOOXMLHeader(in)) { System.out.println(3); return new XSSFWorkbook(OPCPackage.open(in)); } throw new IllegalArgumentException("你的excel版本目前poi解析不了"); }
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
换成2003的xls就好了.
层主,你好,冒昧问一下你的这个问题解决了吗,我现在也遇到了.
在这一句:wb=this.createWorkbook(file);,就是在创建wb对象不走了,也不报错,什么反应都没有,就是不动了。。。。
@80的尾巴 文件路径有问题么?
你这些语句都加了断点么?是在执行完哪一句后停滞不前的?