我试图转换日期格式。例如,我有两种格式:
Format1 REPLACE(string, ' ', ' ') -> 2 whitespaces to 1
REPLACE(string, ' ', ' ') -> 3 whitespaces to 1 and so on..
Format2 Tue, 31 Jan 2017 07:41:06 GMT
有没有办法将Format1转换为与Format2相同,反之亦然?提前谢谢。
答案 0 :(得分:0)
使用两个单独的格式化程序进行输入和输出:
SimpleDateFormat inputFormatter =
new SimpleDateFormat("E, d MMM yyyy HH:mm:ss z", Locale.ENGLISH);
SimpleDateFormat outputFormatter =
new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS");
outputFormatter.setTimeZone(TimeZone.getTimeZone("GMT"));
String converted =
outputFormatter.format(
inputFormatter.parse("Tue, 31 Jan 2017 07:41:06 GMT"));
System.out.println(converted);
// output: 2017-01-31T07:41:06.000
使用新类DateTimeFormatter
可以在Java-8中实现类似的方法。