java數(shù)據(jù)校驗(yàn)框架 java檢查字符串是否是合法的日期?
java檢查字符串是否是合法的日期?Public static Boolean isvaliddate(string STR){Boolean convertsucces=true//將日期格式指定為
java檢查字符串是否是合法的日期?
Public static Boolean isvaliddate(string STR){Boolean convertsucces=true//將日期格式指定為四位年份/兩位月份/兩位日期。請(qǐng)注意,yyyy/mm/DD區(qū)分大小寫;simpledateformat format=new simpledateformat(“yyyy/mm/DD HH:mm”)請(qǐng)嘗試{//set lenient to false否則,simpledateformat將更寬松地驗(yàn)證日期。例如,2007/02/29將被接受并轉(zhuǎn)換為2007/03/01格式.setLenient(錯(cuò)誤)格式.parse(STR)}catch(parseexception E){//E.printstacktrace()//如果拋出java.text.ParseException異?;騈ullPointerException,表示格式錯(cuò)誤convertsucces=false}return convertsucces}
日期例如,Excel中的格式在2009年12月24日轉(zhuǎn)換為數(shù)字格式時(shí),將變?yōu)?0171。在Java中處理時(shí),它也將讀取40171。如果使用POI處理Excel中的日期類型單元格,如果僅判斷它是否為日期類型,則最終會(huì)將其作為數(shù)字類型進(jìn)行處理。正確的方法是判斷單元格類型是否為數(shù)字,然后判斷單元格是否為日期格式。如果是,請(qǐng)創(chuàng)建一個(gè)日期格式,然后以該日期格式顯示單元格的內(nèi)容。如果單元格不是日期格式,可以直接獲取數(shù)值。具體代碼如下:if(0==單元格.getCellType()){//如果(HSSFDateUtil.isCellDateFormatted格式(單元格)){//用于轉(zhuǎn)換為日期格式date D=cell.getDateCellValue()DateFormat formatter=new SimpleDateFormat(“yyy-MM-dd HH:MM:ss”)str[k]=格式化程序.format(d) }否則{//Decimalformat DF=new十進(jìn)制格式測(cè)向格式( cell.getNumericCellValue())}