或者说怎么样把一个字符串转换成yyyymmddhhmiss格式的日期?同时对不满足条件的字符串作出反应?

解决方案 »

  1.   

    或者说怎么样把一个字符串转换成yyyymmddhhmiss格式的日期
    ----------------
    这个问题问得莫名其妙
    日期就是Date,字符串的格式只是它的一种输出格式而已,同一个日期当然可以对应不同的输出格式,什么叫把一个字符串转换成某种格式的日期,应该是把某种格式的字符串转换成日期吧?如果是这样的话可以先用正则式匹配来“不满足条件的字符串作出反应?”,然后用DateFormat转换成相应的日期
      

  2.   

    可以通过正则表达式进行判断,不过没法太准确  20061212  可以是YYYYMMDD 也可能是YYYYDDMM
      

  3.   

    正则表达式也没办法准确匹配 ,比如1211  说是MMDD可以 DDMM也无不可
      

  4.   

    正则表达式也没办法准确匹配 ,比如1211  说是MMDD可以 DDMM也无不可
    ------
    yyyymmddhhmiss规则都不是定了嘛,不然还搞p啊
      

  5.   

    把一个字符串转换成你要的格式是没问题的....可是判断一个字符串是否符合你要的格式, 就不知道了
    ----------
    的确是这样,但是根据楼主的需求可以先判断是否是这种格式的,也就是不管这个字符串代表的是不是合法的日期,然后可以用DateFormat.parse处理
      

  6.   

    很难办,不能一下解决使用
        String s = "19990223082333"; // 99年2月23日8点23分33秒,共14个字符
        SimpleDateFormat sdf = new SimpleDateFormat("yyyymmddhhmmss");
        Date dt = sdf.parse(s);
    可以得到正确的时间值。如果s的长度小于14,会抛出违例。但是如果s超过14位,另外不是正确的值,照样能转。转得我看着都晕。用regex肯定不行。所以,自己写代码吧。
      

  7.   

    Date future_sleep = null;
    future_sleep = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2006-06-01 04:00:00");
      

  8.   

    parse方法里的字符串是你所需要转换的那个时间字符串
      

  9.   

    楼上的说得对,用Dateformat格式化就得了