JXL读取空单元格时出错

filemon 2009-06-18 10:50:31
各位大哥,麻烦帮尽快看一下问题出在哪里?
我使用JXL读取Excel,当读取到空值时,就会出现异常。该如何处理。
后面的那个50,是读取到的单元格的数字。如果是15的位置是空的话,它就是15.

java.lang.ArrayIndexOutOfBoundsException: 50
at jxl.read.biff.SheetImpl.getCell(SheetImpl.java:356)
at Test.main(Test.java:16)


我希望是连续读取Excel的单元格,当读取到为空的单元格时跳出循环,可是当读到空单元格时,就会出现异常。使用cell.getType==CellType.EMPTY 无法判断(只在在单元格中设置为空字符后才能判断正确)。

不知道其它人是怎样解决的?急需帮助,先谢谢了。
...全文
799 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaozaq 2011-06-12
  • 打赏
  • 举报
回复
要是能通过getCell(x,y)的返回值判断cell的值是否为空就好了。为什么要抛出异常呢?
filemon 2009-06-18
  • 打赏
  • 举报
回复
找到了解决的方法。

原来JXL在读取Excel表格时,会获取一个列数和行数。分别用 cell.getColumns();和cell.getRows()来查看。
如果在读取的单元格中,超过了这个范围,就会判断成越界了。
filemon 2009-06-18
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 xfzhuhan 的回复:]
用这个 cell.getContents() 看看我们的就可以。
[/Quote]
如果Cell(i,j)为空的话。
只要有 Cell cell=sheet.getCell(i,j)这个语句,就会出现异常,更不会去执行后面的 cell.getContents()了;
昨天用的MeEclipse,没搞好,今天又试了几个Excel谁的,都是这样子的,网上也没找到解决的办法,只好到这里求救了。
xfzhuhan 2009-06-18
  • 打赏
  • 举报
回复
用这个 cell.getContents() 看看我们的就可以。

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧