【发布时间】:2017-04-07 11:14:52
【问题描述】:
我有字符串格式的时间戳为“Thu, 23 Feb 2017 04:56:38 GMT”。那么,如何将此字符串时间戳转换为“2017-02-23 04:56:38.0”格式。 我试过链接java converting date in string format to timestamp。但面临转换错误。 我的示例代码如下。
String str = "Thu, 23 Feb 2017 04:56:38 GMT";
SimpleDateFormat sdf1 = new SimpleDateFormat("EEE, dd MMM yyyy hh:mm:ss a");
Date date = null;
try {
date = (Date) sdf1.parse(str);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("Date Object:" + date);
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("Formatted Date:" + sdf2.format(date));
错误:java.text.ParseException:无法解析的日期:“2017 年 2 月 23 日星期四 04:56:38 GMT” 在 java.text.DateFormat.parse(DateFormat.java:366)
【问题讨论】:
-
SimpleDateFormatter > 一个 |上午/下午标记 |正文 | PM ,因此您正在使用 AM/PM 标记来解析 Timezone ...
-
@Fildor,你是对的。在 simpleDateformat 中将 a 更改为 z 后,它工作正常。谢谢
-
在重复的问题上查看my Answer。