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

在做excel导入数据时候,excel里的日期是格林威治时间,普通格式化不行,这里总结一下格式化格林威治时间的方法:

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。

你可能感兴趣的:(代码积累)