【JAVA】读Excel再抽个奖 2019-09-05

说一下前提吧,为什么涉及到反向读取数据?为什么读出来再抽个奖?
之前有段时间,项目在读取Excle中的数据用的比较多,其实也做了读取数据保存到数据库中,但是做个简单点得吧

说一下掏过来得东西吧,哈哈两个文章一掏就用了,
java读取Excel表格中的数据
list随机抽取元素

来,开始!
按照那个文章说的开整

我把不要的都去了,大致内容还是长那样

打开开发软件,先导个pom包,关于jxl的,找jar包推荐网址:我也不知道咋发现的,以后点进去找就得了



    net.sourceforge.jexcelapi
    jxl
    2.6.12

来建一个对应的实体类,对于每一行数据做个说明,让数据过去,能知道是干啥的。
实体类哦

然后你的 Sheet Workbook Cell 一些就可以用了


主要看这图就完事了。

根据图来做,在createRandomList要加一个过滤数据
原因是列表随机取值时给的列表多了一个标题,所以需要过滤处理一下
把第一行干掉就完事了:list.remove(0);

但是这个上面有一点要注意,这一定会抛错误。。
原因是循环过来,直接取值的时候会使sheet.getCell(0,i);的时候会数值越界,因为你循环的时候,下一个可能就突然没有这个值了,如果你知道数据总数,可以换种写法当传参值带过来这样,能解决这个
但是那句判断读取数据为空 又感觉没啥用?
奥,是我写错了,判断合并单元格的标题当然没用,但是就算是处理第一条cell0,应该也不会执行到,因为在获取到这个值的时候就越界了,但是为什么一定要写呢?
我猜的原因是while(true)是一直循环了,防止结束不了了,到最后这个book.close()就不会处理了,所以要给一个break这个,哈哈。

以上!
2019年9月5日18点21分 lvlvlv

你可能感兴趣的:(【JAVA】读Excel再抽个奖 2019-09-05)