有个问题请教下,关于String的,
接收了一个String,然后我要判断它是不是以下格式:
20071017(4位年2位月2位日),即一个日期格式
我该怎么去判断(最好不要用正则实现)
谢谢

解决方案 »

  1.   

    SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMdd");
    String strDate="20071017";
    try{
    sdf.parse(strDate);
    }catch(Exception ex){
    //这里就是不符合日期格式的字符串处理
    }
      

  2.   

    public static void main(String[] args) {
    System.out.println(isDateStr("20071017", "yyyyMMdd") ? "正确" : "不正确");
    System.out.println(isDateStr("20081438", "yyyyMMdd") ? "正确" : "不正确");
    System.out.println(isDateStr("2008143d", "yyyyMMdd") ? "正确" : "不正确");
    } public static boolean isDateStr(String str_input, String rDateFormat) {
    if (null != str_input) {
    SimpleDateFormat formatter = new SimpleDateFormat(rDateFormat);
    formatter.setLenient(false);
    try {
    formatter.format(formatter.parse(str_input));
    } catch (Exception e) {
    return false;
    }
    return true;
    }
    return false; }