1

androidで日付と時刻のフォーマットを学んでいるのですが、日付と時刻をタイムラインとして変換してみたいのですが…?例:

String current_date = "2013-10-07 20:57:20";

String val_date1 = "2013-10-07 20:57:20";
String val_date2 = "2013-10-07 19:57:20";
String val_date3 = "2013-10-07 17:57:20";
String val_date4 = "2013-09-07 20:57:20";

上記の日付と調整されたCURRENT_DATEが変換され、次のような結果が得られます。

String val_date1_after_formated = "just now";
String val_date2_after_formated = "1h";
String val_date3_after_formated = "3h";
String val_date4_after_formated = "1d";

プログラムで日付を変換する方法は? 誰でも私を助けてくれることを願っています。私の英語がうまくない場合は申し訳ありません...

4

3 に答える 3

1

formatDurationこれには良いかもしれません:

public String getDuration(long time) {
    StringBuilder sb = new StringBuilder();
    android.support.v4.util.TimeUtils.formatDuration(System.currentTimeMillis() - date, sb);
    return sb.toString();
}

を取得するにlong timeは、入力日付を解析する必要があります (おそらく を使用しますSimpleDateFormat)。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US);
long date = sdf.parse("2013-10-07 20:57:20").getTime();
String duration = getDuration(date);
于 2013-10-09T15:00:16.440 に答える