日期:2014-05-19  浏览次数:20667 次

poi excel2007数据导入到数据库中
Java code

FileInputStream fis = new FileInputStream(xlsx);   //文件流
XSSFWorkbook workbook = new XSSFWorkbook(fis);  //创建工作簿
XSSFSheet sheet = workbook.getSheetAt(0);  //工作表,0表示一个表
XSSFRow row = null;  //excel的行
XSSFCell cell = null; //列
int totalRow = sheet.getLastRowNum(); //excel总记录数
long sfz= 0;      //excel中身份证的类型,但是也有身份证后面是字母的啊,问题就是这里不知道如何定义
String sql= "insert into yjsm_hd(sfz) values(?)";
for(int i=1;i<=totalRow;i++){  
      row=sheet.getRow(i);  
      cell=row.getCell((short) 0);
      sfz=(long)cell.getNumericCellValue();  //如果上面定义的类型错了,这里就取不到excel中的值
//sfz=cell.getStringCellValue().toString();
      pst=conn.prepareStatement(sql);
      pst.setString(1,sfz);  
      pst.execute();
}


求解决方案》。。。

------解决方案--------------------
探讨

如果定义成String,取值的时候sfz=cell.getStringCellValue()会报错