【技巧】JAVA 日期问题

时间:2021-10-12 02:51:46

项目要求要把 Fri Aug 22 15:22:06 CST 2014 这样的字符串日期格式转换为 2014-08-22 15:22:06的格式。

那先要将这个字符串识别,试了好几种识别方式,总是不正确。最后发现是默认语言问题,这里有英文单词,而我的默认识别日期语言是中文。

所以要如下方式读取

String time = "Fri Aug 22 15:22:06 CST 2014";
Date times =new SimpleDateFormat("E MMM dd HH:mm:ss z yyyy",Locale.US).parse(time);
String time2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",Locale.CHINA).format(times);
System.out.println(time2);
注意 Locale.US 这个参数,告诉JVM用英文方式去读。




最后,识别成功,搞定