2014-07-20 30 views
0

我試圖從一個JSON API來時間戳轉換爲相對時間跨度字符串是這樣的:的Java ParseException的:無法解析的日期

try { 
       SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ"); 
       Date date = sdf.parse(item.getTimeStamp()); 
       long milliseconds = date.getTime(); 

       CharSequence timeAgo = DateUtils.getRelativeTimeSpanString(
         milliseconds, 
         System.currentTimeMillis(), DateUtils.SECOND_IN_MILLIS); 
       timestamp.setText(timeAgo); 

      } catch (java.text.ParseException e) { 
       e.printStackTrace(); 
     } 

時間戳回來的JSON這樣的:2014-07-01T00:05:20Z

我正在拋出的例外Unparseable date

我在做什麼錯在這裏?

回答

4

Z預期的時區值,改變你的模式,你不需要SSS因爲你沒有毫秒輸入

yyyy-MM-dd'T'HH:mm:ss'Z' 
+0

謝謝!我的日期現在正在解析並顯示。儘管如此,它仍然不會轉換爲'timeAgo'格式。任何想法爲什麼? – settheline

+0

嘗試將'SECOND_IN_MILLIS'更改爲'FORMAT_NUMERIC_DATE' –

相關問題