今天项目中涉及到要用到上传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); } } } }
希望对大家有所帮助