2016-08-29 12 views
0

日付ストリング:2016-08-29T11:39:52.2133065Androidの日時解析問題

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'"); 
    try { 
     Date date = dateFormat.parse(dateString); 
     return dateFormat.format(date); 
    } catch (ParseException e) { 
     Log.e(TAG, "Unable to parse date " + e); 
    } 

文字列が2016-08-29 11:39に変換する必要があるが、私は、解析例外を取得しています。

+0

これはあなたの問題http://stackoverflow.com/a/19112487/5291413 [ジャワのSimpleDateFormatの – Berkay92

+0

可能な複製( "YYYY-MM-dd'T'HHを解決することができます。 ss'Z '")はタイムゾーンをISTとして与える](http:// stackoverfl ow.com/questions/19112357/java-simpledateformatyyyy-mm-ddthhmmssz-gives-timezone-as-ist) – Shark

答えて

1

、あなたの日付ストリングでTを削除し、これを試してみてください。 「:39:2016-08-29T11 52.2133065」の場合、日付フォーマッタは次のようになります。

SimpleDateFormat newFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm"); 

用途:

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm"); 

はまた、あなたは、出力形式を指定する新しいフォーマッタが必要になりますこのように彼らは:MM:

Date date = dateFormat.parse(dateString); 
return newFormat.format(date); 
0

は、フォーマッタが解析される文字列の形式に対応している必要があり、日付に渡された書式

   String dateString ="2016-08-29T11:39:52.2133065"; 
       SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm"); 
       try { 
        Date date = dateFormat.parse(dateString); 
        dateFormat.format(date); 
        Log.e("Log",""+dateFormat.format(date)); 
       } catch (ParseException e) {   
         Log.e("GridActivity", "Unable to parse date " + e); 
       }