今天项目中涉及到要用到上传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);
}


}

}
}


希望对大家有所帮助