Java Poi的一点想法,大神帮忙看看

MattK 2019-07-10 09:18:29
目前已经能用JavaPoi实现读取excel内容,但是有点别的想法,之前做的是,读取excel的sheet页名字当做表名,内容作为数据,拼成sql文插入DB. 如果只做一个sheet页,使用特定的标识符作为起始点,先在sheet页内搜索这个标识符,然后在标识符下一行的位置开始读内容。 现在有两个问题 一是怎么在sheet页内搜索这个标识符, 二是如果中间有空行或者空列,怎么避免空指针
...全文
137 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
MattK 2019-07-17
  • 打赏
  • 举报
回复
引用 5 楼 maradona1984的回复:
[quote=引用 4 楼 weixin_39246271 的回复:] [quote=引用 2 楼 maradona1984的回复:]为啥要搜索,你定好规则,第一列以某个符号开头的就属性定义的那一行即可 没有就没有,为什么会空指针...你又不会对他做什么操作
再加上sheet.getPhysicalNumberOfRows()这个方法不会管你中间有多少行空行,它只会取有数据的最大的那一行的行数,这样循环便利取值就会出现空指针了[/quote] 其实你根本不需要考虑这种问题,如果为空,直接抛异常即可,你建个数据库不写表名人家会让你通过?该报错就得报错[/quote] 这跟表名没关系啊,数据中间有空行的话也会跪啊
maradona1984 2019-07-12
  • 打赏
  • 举报
回复
为啥要搜索,你定好规则,第一列以某个符号开头的就属性定义的那一行即可 没有就没有,为什么会空指针...你又不会对他做什么操作
MattK 2019-07-12
  • 打赏
  • 举报
回复
没人看,自己顶一下😔
maradona1984 2019-07-12
  • 打赏
  • 举报
回复
引用 4 楼 weixin_39246271 的回复:
[quote=引用 2 楼 maradona1984的回复:]为啥要搜索,你定好规则,第一列以某个符号开头的就属性定义的那一行即可 没有就没有,为什么会空指针...你又不会对他做什么操作
再加上sheet.getPhysicalNumberOfRows()这个方法不会管你中间有多少行空行,它只会取有数据的最大的那一行的行数,这样循环便利取值就会出现空指针了[/quote] 其实你根本不需要考虑这种问题,如果为空,直接抛异常即可,你建个数据库不写表名人家会让你通过?该报错就得报错
MattK 2019-07-12
  • 打赏
  • 举报
回复
引用 2 楼 maradona1984的回复:
为啥要搜索,你定好规则,第一列以某个符号开头的就属性定义的那一行即可 没有就没有,为什么会空指针...你又不会对他做什么操作
再加上sheet.getPhysicalNumberOfRows()这个方法不会管你中间有多少行空行,它只会取有数据的最大的那一行的行数,这样循环便利取值就会出现空指针了
MattK 2019-07-12
  • 打赏
  • 举报
回复
引用 2 楼 maradona1984的回复:
为啥要搜索,你定好规则,第一列以某个符号开头的就属性定义的那一行即可 没有就没有,为什么会空指针...你又不会对他做什么操作
这个的想法是,如果在一个sheet页中写了多个表的数据,并且数据前或者上一行有标识符进行区分的情况下进行读取,再加上考虑到个人习惯可能在数据行之间加了空行的情况

51,409

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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