昨天做了一个将Excel中准备的数据转化成对应的SQL的功能。
其实核心就是用poi库去读取Excel文件就好了。
由于Excel文件不同于纯文本的csv或其他文件,其本身的数据对象(即一个Cell)是有类型的。
不能将所有的数据都当做string来处理,在读取时首先要判断当前Cell的cellType。cellType共有集中类型:string、numeric、bool、date、formula等。
我这里变只用到了string、numeric两种,然后通过getStringCellValue和getNumericCellValue读取对应的值。
但是如果我的一个字段的期望类型是string 类型。但是需要存放一个数字,比如:8。
而这个8是通过getNumericCellValue读取的,而这个函数读取的值是8.0。是不是有问题了呢?
如果我的字段期望类型是numeric那8 和 8.0其实是没区别的。
但是如果是string的话8和8.0就完全不一样了。
因此需要在字段期望类型是string的时候将读取得到的值中的/\.0+$/替换掉才可以。
但,归根到底,通过getNumericCellValue函数得到的string值本身就无法区分"8.0"和"8"两个值。因此这个问题暂时也没办法解决。
所幸的是,我们可以和使用者进行约束,string类型的字段最好不要构造"*.000"这样的数据哈。
相关推荐
Java用poi读取excel文件Java用poi读取excel文件Java用poi读取excel文件
POI 读取Excel文件 POI 读取Excel文件
使用poi解析excel文件,并将数据写入到数据库 项目说明 这个项目实现的功能是读取excel文件中的数据,解析并写入数据库。 读取的excel文件位于项目目录下的 excel\0805.xlsx 使用IntelliJ IDEA开发此项目 使用MYSQL...
Java用poi读取excel文件.pdf
可以运行的POI导出Excel文件实例,里面有两种方法,一个是Servlet,一个是main
本案例中利用Apache Poi读取Excel用法,源码注释详细基本用法!
最新版poi 相关6个jar包 for java。Java读取Excel表格数据时(.xls、.xlsx 格式),需要引用的jar包 亲测as上可以读取到2010excel内容,内附读取源码
利用POI读取excel写入到word 利用POI读取excel写入到word 利用POI读取excel写入到word,压缩包里包含了jar包
将excel文件中的内容通过java文件读取出来,包括总行数,列数,单元格内容,合并单元格,行高,列宽,图片等信息。
之前用jxl发现不支持excel2007,不得以就去用poi实现excel的读取了!本人亲测的一个实例,支持excel2007!
基于新版本的POI编写的读取Excel文件数据的工具类,可根据绝对路径、File对象、InputSteam对象读取解析Excel文件内容,并返回List<List<String>>格式结果,其中包含对单元格公式的处理。
阐述如何用POI来读取/写入完整的Excel文件。
JAVA IO操作 POI读取excel的内容
实现了JAVA 窗口,读取EXCEL文件,用poi读取EXCEL内容只是一个小例子
POI生成Excel POI读取Excel java操作Excel Servlet生成Excel web项目,包含含读取Excel与生成Excel方法
cell.setCellType(HSSFCell.CELL_TYPE_STRING);//定义单元格为字符串类型 cell.setCellValue("增加值");//在单元格中输入一些内容 //创建一输出文件流 FileOutputStream fOut=new FileOutputStream...