你好我一直试图格式化这个日期,但它一直给我一个不可解决的日期错误?我试图获得像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());
答案 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与您的字符串匹配