以下のコードがあります。Jodaを使用して2つの日付を比較しようとしているので、時間の違いを取得できます。これは、同じ日の2つの日付で正常に機能します(以下のテスト1を参照)。ただし、同じ日になっていない2つの日付を比較すると、間違った結果が得られます(以下のテスト2を参照) 。
DateTime end = new DateTime(event.endTime)
DateTime start = new DateTime(event.startTime)
Period p = new Period(start, end);
long hours = p.getHours();
long minutes = p.getMinutes();
System.out.println("Task title :"+ event.getTitle()+ " ...The differnce in hours is : "+hours+" The differnce in minutes is : "+minutes)
2つのテストからの印刷結果。
最初は同じ日に行われるタスクで、3時間の差があります。
2番目は翌日に終了するタスク です...前のタスクテストのように適切に違いを与えません
This is the END TIME :2012-10-12 14:15:00.0... This is the START TIME :2012-10-12 10:30:00.0
Task title :Test 1 ...The differnce in hours is : 3 The differnce in minutes is : 45
This is the END TIME :2012-10-12 22:00:00.0... This is the START TIME :2012-10-11 22:00:00.0
Task title :Test 999 ...The differnce in hours is : 0 The differnce in minutes is : 0
どんな援助も大歓迎です