java數(shù)據(jù)校驗框架 java檢查字符串是否是合法的日期?
java檢查字符串是否是合法的日期?Public static Boolean isvaliddate(string STR){Boolean convertsucces=true//將日期格式指定為
java檢查字符串是否是合法的日期?
Public static Boolean isvaliddate(string STR){Boolean convertsucces=true//將日期格式指定為四位年份/兩位月份/兩位日期。請注意,yyyy/mm/DD區(qū)分大小寫;simpledateformat format=new simpledateformat(“yyyy/mm/DD HH:mm”)請嘗試{//set lenient to false否則,simpledateformat將更寬松地驗證日期。例如,2007/02/29將被接受并轉(zhuǎn)換為2007/03/01格式.setLenient(錯誤)格式.parse(STR)}catch(parseexception E){//E.printstacktrace()//如果拋出java.text.ParseException異?;騈ullPointerException,表示格式錯誤convertsucces=false}return convertsucces}
日期例如,Excel中的格式在2009年12月24日轉(zhuǎn)換為數(shù)字格式時,將變?yōu)?0171。在Java中處理時,它也將讀取40171。如果使用POI處理Excel中的日期類型單元格,如果僅判斷它是否為日期類型,則最終會將其作為數(shù)字類型進(jìn)行處理。正確的方法是判斷單元格類型是否為數(shù)字,然后判斷單元格是否為日期格式。如果是,請創(chuàng)建一個日期格式,然后以該日期格式顯示單元格的內(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)制格式測向格式( cell.getNumericCellValue())}