您的位置:首页 > 编程语言

[置顶] poi最简单易学解析xls代码

2013-04-13 23:41 274 查看
今天项目中涉及到要用到上传excel文件,并把读取到的数据到数据库里面,需求是这样的,你自己要做一个xls文件的样本,要不然用户怎么知道该

所以这样做好后就可以解析了下面是解析代码

public static void main(String[] arg) throws Exception{
InputStream is=new FileInputStream("C:/Documents and Settings/Administrator/workspace/trainsystem/WebContent/WEB-INF/classes/Sample.xls");

HSSFWorkbook wb=new HSSFWorkbook(is);
HSSFSheet sheet = wb.getSheetAt(0);
for(int i =sheet.getFirstRowNum()+1 ;i<=sheet.getLastRowNum() ;i++){//因为第一行是标题所以不需要读取
HSSFRow row = sheet.getRow(i);
for(int j=row.getFirstCellNum() ;j<row.getLastCellNum() ;j++){

HSSFCell cell   = row.getCell(j);//获得这一行的每一列的单元格对象

if(j==3){//因为我第三行是日期的,发现wps和excelyyyy年M月d日和yyyy-M-d是互通的,因wps会自动把这2中类型加上单元格格式
switch(cell.getCellType()) {
case HSSFCell.CELL_TYPE_NUMERIC:
System.out.println(cell.getDateCellValue().toString());
break;
case HSSFCell.CELL_TYPE_STRING://为了还可以处理yyyy.M.d这种类型的
System.out.println(new SimpleDateFormat("yyyy.M.d").parse(cell.getStringCellValue()).toString());
break;
}

}else{
cell.setCellType(Cell.CELL_TYPE_STRING);
String str=cell.getStringCellValue();
System.out.println(str);
}

}

}
}


希望对大家有所帮助
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: