-1

重複の可能性:
Java で期間を計算し、出力をフォーマットするにはどうすればよいですか?

時間範囲を文字列としてフォーマットする簡単な関数はありますか? 現時点では、次のような出力を生成できます。

「81日」

final Calendar today = Calendar.getInstance();
int today_day = today.get(Calendar.DAY_OF_YEAR);

final Calendar startCal = Calendar.getInstance();
startCal.add(Calendar.Day_OF_YEAR,81);  
int start_day = startCal.get(Calendar.DAY_OF_YEAR);

 int dif= start_day-today_day;
 if (dif >1){
   str = "in "+dif+" days";
 }

しかし、私はそれが好きです

「2ヶ月と20日」

4

1 に答える 1

-1

Date オブジェクトを使用することをお勧めします。

Date startDay = new Date(); //today
Date targetDay = new Date();
targetDay.setDate(startDay.getDate() + 81);
Date difference = new Date(startDay.getTime() - targetDay.getTime());
// you may format as you want i.e difference.getMonth()
String differenceDateString = difference.toString(); 

CalendargetTimeメソッドDateも object を返します。

于 2012-09-21T12:09:51.550 に答える