Mon Dec 31 00:00:00 CST 2012 这种格式的字符串怎么转换成yyyy-mm-dd日期呢?

解决方案 »

  1.   

        public static String formatDate(Date date) {
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
            return simpleDateFormat.format(date);
        }
      

  2.   


    。这个代码 你直接去运行?
    那我就无语了。
    主要是看里面用了啥
    这个是我程序的一部分,我懒得写就copy过来了。。
      

  3.   

    /**
     * @param args
     * @throws ParseException 
     */
    public static void main(String[] args) {
    String dd = new Date().toString();
    try {
    System.out.println(new SimpleDateFormat("yyyy-MM-dd").parse(dd));
    } catch (ParseException e) {
    e.printStackTrace();
    } }这样不好使,你试试
      

  4.   

        public static void main(String[] args) {
            Date dd = new Date();
            System.out.println(new SimpleDateFormat("yyyy-MM-dd").format(dd));
        }非得让我动手。
    这个没难度
    自己得加强看代码呀
    parse是给个字符串 返回Date    主要作用是自己给个字符串生成时间 字符串可以是"2010-03-23" 但new Date().toString(); 传进去肯定报错的。
    format 是给个Date  返回字符串  主要是格式化日期类型
    首先要明白自己要什么样的功能,然后用对应的函数。
      

  5.   

    简单点说:我就想知道“Mon Dec 31 00:00:00 CST 2012” 这个格式的字符串怎么转成日期。你说的方法不好使。我当然知道找对应的函数,没找到才来问的。
      

  6.   

    哦,我看错了。
    Mon Dec 31 00:00:00 CST 2012 这个不知道哪里得到的 既然要用yyyy-mm-dd这种格式的 
    为什么不在哪里格式化?
      

  7.   

    Date d = new Date("Mon Dec 31 00:00:00 CST 2012");
    String f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d);
    System.out.println(f);
      

  8.   

    String s = "Tue Mar 23 16:49:40 CST 2010";
    Date f = new Date();
    try {
    f = new SimpleDateFormat().parse(s);
    } catch (ParseException e) {
    e.printStackTrace();
    }
    String str = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(f);
    System.out.println(str);
      

  9.   

    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.Locale;public class Test {    public static void main(String[] args) {
            String str = "Mon Dec 31 00:00:00 CST 2012";
            Date date = parse(str, "EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);
            System.out.printf("%tF %<tT%n", date);
        }    public static Date parse(String str, String pattern, Locale locale) {
            if(str == null || pattern == null) {
                return null;
            }
            try {
                return new SimpleDateFormat(pattern, locale).parse(str);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            return null;
        }    public static String format(Date date, String pattern, Locale locale) {
            if(date == null || pattern == null) {
                return null;
            }
            return new SimpleDateFormat(pattern, locale).format(date);
        }
    }
      

  10.   

    那就怪事了  我的JDK 1.4的版本都能运行得到正确的结果 !
      

  11.   

    支持一下13楼
    Stirng a="Mon Dec 31 00:00:00 CST 2012";
    Date d = new Date(a);
    String f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d);
    System.out.println(f);