格式化格林威治时间(Wed Aug 01 00:00:00 CST 2012)

1。如果格林威治时间时间是date类型。(这种格式最简单)
       SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd"); 
       Date d=new Date();
       System.out.println("格林威治时间:"+d);
       String s=df.format(d);
       System.out.println("格式化后的时间"+s);

2.如果格林威治时间时间是String类型。(这种要比第一种稍微难点)

      String date = "Wed Aug 01 00:00:00 CST 2012";
      SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy",Locale.US);
      Date d=sdf.parse(date);

    sdf=new SimpleDateFormat("yyyyMMdd");

      System.out.println(sdf.format(d));

分析:

  为什么要new 两遍SimpleDateFormat呢?因为第一遍是提醒sdf要格式的类型是林威治时间SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy",Locale.US);
      第二遍是格式化成自己想要的格式。SimpleDateFormat("yyyyMMdd"),因为最后的format格式化时间里面的参数需要是一个date类型。所以必须要string转换成date。

原文地址:https://www.cnblogs.com/henuyuxiang/p/6149526.html