본문 바로가기

개발중/Java

Java - String 날짜형 Type 검사

728x90
반응형

Java - String Date 형 Type 검사

아래 네가지 형식이 아니라면 "" 빈 값을 반환한다.

"yyyy-mm-dd", "yyyy.mm.dd", "yyyymmdd", "yyyy/mm/dd"

 

package com.rsn.POMS;

import java.text.SimpleDateFormat;
import java.util.Date;

import java.text.ParseException;

public class test{
	
   public static boolean validateJavaDate( SimpleDateFormat dateTest, String strDate)
   {
	if (strDate.trim().equals("")) {
	    return false;
	} else { 
	    dateTest.setLenient(false); 
	    try  {
	        Date javaDate = dateTest.parse( strDate );
	    }
	    catch (ParseException e) {
	        return false;
	    }
	    return true;
	}
   }
   
   public static String dateCheck( String dateStr ) {
	   
	   SimpleDateFormat dateTest;
	   
	   String dateFormats[] = { "yyyy-mm-dd", "yyyy.mm.dd", "yyyymmdd", "yyyy/mm/dd" };

	   for( String format : dateFormats ) {
		   dateTest =  new SimpleDateFormat(format);
		   
		   if( validateJavaDate(dateTest, dateStr) == true ) {
			   dateStr = dateStr.replaceAll("[^0-9]",""); 
			   return dateStr.length() == 8 ? dateStr : ""; 
		   }
	   }
	   return "";
   }
   
   public static void main(String args[]){
	String str = dateCheck("2020/01/01");
	System.out.println("최종 ? " + str );
	
	//dateCheck("12-29-2016");
	//dateCheck("12,29,2016");
   }
}

 

728x90
반응형