作者:乔山办公网日期:
返回目录:excel表格制作
这是正常的。通过POI取出的数值默认百都是度double,即使excel单元格中存的是1,取出来的值也是1.0,这就造成了知一些问题,如果数据库字段是int,那么就会wrongdatatype,所以需要对数值类型处道理。代码如下:Cellcell=null;//单元格版ObjectinputValue=null;//单元格值if(!isEmpty(cell)&&cell.getCellType()==Cell.CELL_TYPE_NUMERIC){longlongVal=Math.round(cell.getNumericCellValue());if(Double.parseDouble(longVal+".0")==doubleVal)inputValue=longVal;elseinputValue=doubleVal;}这么处理后,单元格中的小数没有变化,如果是整数,也会取到整数。权
100%地抄的?
没必要使用POI了,当二进制文件抄
如果表头固定在抄第一行,可以扫描表头,获得你需要的数据的列号,例如下面的代码寻找姓名、性别、手机知的列号:
var c_name,c_sex,c_mobile;
for (i=0;i<n;i++){
if (cells(1,i)=="姓名") c_name=i;
if (cells(1,i)=="性别") c_sex=i;
if (cells(1,i)=="手机") c_mobile=i;
}
然后开始正确程道序,使用这些列号获取你需要的列。
这说明你读表的表路径出了问题,虽然是同一张表,但是你把表复制到其他地方再进行修改当然不会更新