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 ";
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。