2017-03-27 2 views
1
frdt = req.getParameter("[FRDT]"); 


     if(isValidDate(frdt)){ 
      frdt = req.getParameter("[FRDT]"); 
     }else{ 
      frdt = formatDt(frdt); 
     } 

    private static boolean isValidDate(String input) { 
    String formatString = "YYYY-MM-dd"; 

    try { 
     SimpleDateFormat format = new SimpleDateFormat(formatString); 
     format.setLenient(true); 
     format.parse(input); 
    } catch (ParseException e) { 
     return false; 
    } catch (IllegalArgumentException e) { 
     return false; 
    } 

    return true; 
} 

frdt (입력 날짜)에 대한 입력은 2017-03-27 11:33:21 또는 2017-03-27입니다. 날짜와 시간을 포함하여 날짜, 그것은 시간 이전에 'T'를 추가 할 경우에만 '2017년 3월 27일'시간없이, 단지시간이 있는지 확인하는 방법은 무엇입니까?

frdt = req.getParameter("[FRDT]"); 

를 실행하는 경우 는하지만, 두 가지 조건이있다.

시간을 포함하는 입력의 유효성을 검사하는 방법은 무엇입니까?

친절하게 조언하십시오.

감사와 안부 샤론

+1

길이를 확인 하시겠습니까? 10보다 길면 날짜가 있습니다. – Jens

답변

0

문자열이 포함 된 경우 확인할 수 : 문자 또는 다른 당신은 공백 문자로 문자열을 분할 할 수 있으며 길이가 1보다 큰 경우 다음 당신은 시간을 가질 수 있음을 나타냅니다 ' 입력.

0

정규 표현식을 사용합니다.

if (input.matches("\\d{4}-\\d{2}-\\d{2}")) { 
    ... 
} 
관련 문제