如何格式化日期?

时间:2011-07-15 09:23:47

标签: android simpledateformat

你好我一直试图格式化这个日期,但它一直给我一个不可解决的日期错误?我试图获得像2011-06-24T19:55:37Z的时间戳到2011年6月24日。这是我正在使用的代码。另外一点是收缩(如第1,第2,第3)可能吗?

 SimpleDateFormat sdf = new SimpleDateFormat("MM d, yyyy", Locale.US);
 Date dt = sdf.parse("2011-03-01T17:55:15Z");
 time.setText("Time: " + dt.toString());

2 个答案:

答案 0 :(得分:2)

问题是提供给SimpleDateFormat的构造函数的格式与您的日期格式不匹配。

字符串MM d, yyyy告诉SimpleDateFormat如何解释2011-03-01T17:55:15Z

the docs中描述了构建格式字符串。

答案 1 :(得分:0)

这来自stackoverflow中的另一个问题

Date date = new Date(location.getTime()); 
DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(getApplicationContext()); 
mTimeText.setText("Time: " + dateFormat.format(date)); 


DateFormat formatter = new SimpleDateFormat("yyyy-mm-dd HH:MM:SS -05:00");
Date date = (Date)formatter.parse("2011-06-24T19:55:37Z");

确保SimpleDateFormat与您的字符串匹配