2017-02-21 24 views
1

APIから2017-01-15T21:30:05Zという日時を取得しています。私はJAN 15,2017と時刻を9:30 pmの形式に変更したいと思います。日付と時刻の形式を変更するAndroid

ここに私のコードはフォーマットされていません。

News currentNews = newsList.get(position); 
String time=currentNews.getTime(); 
String[] parts=time.split("T"); 
parts[1]=parts[1].replace("Z",""); 

dateView.setText(parts[0]); 
timeView.setText(parts[1]); 
+0

このような問題が多くなっている..あなたはここで見ることができます[リンク](http://stackoverflow.com/questions/8654990/how-can-i-get- current-date-in-android?rq = 1) – ku4irka

答えて

1

あなたがSimpleDateFormatDateオブジェクトを使用する必要があります。最初のスタイルで1つのSimpleDateFormatを作成し、目的のスタイルで1つ作成する必要があります。次に、Dateオブジェクトを作成し、このオブジェクトに対してAPI dateから受け取った解析を行います。次に、2番目のSimpleDateFormatを使用して印刷します。

このコードを試してみてください。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'"); 
SimpleDateFormat sdf2 = new SimpleDateFormat("MMM dd, yyyy h:mm a"); 

try { 
    Date d = sdf.parse("2017-01-15T21:30:05Z"); 
    System.out.println(d);      // date in INITIAL format 
    System.out.println(sdf2.format(d));  // date in DESIRED format 
} catch (ParseException e) { 
    e.printStackTrace(); 
} 
+0

ありがとう、コードは完全に動作しています。 –

+0

@priyanshugoyalそれを聞いてうれしい!受諾と私の答えupvotingを考慮する:)ハッピーコーディング! – Marat

関連する問題