epochから返された日数がJoda-Timeであることから、入力した日時によって変化する問題があります。 2012-05-14 22:00:00
と2012-05-14 02:00:00
と入力すると、同じ日に同じ結果が出るため、同じ結果が期待されます。以下は私のコードです。エポック以降のJoda-Time日数
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date1 = sdf.parse("2013-05-03 07:00:00");
Date date2 = sdf.parse("2013-05-03 23:30:00");
MutableDateTime epoch = new MutableDateTime();
epoch.setDate(0); //Set to Epoch time
System.out.println("Epoch: " + epoch);
Days days1 = Days.daysBetween(epoch, new MutableDateTime(date1.getTime()));
Days days2 = Days.daysBetween(epoch, new MutableDateTime(date2.getTime()));
System.out.println("1) Days Since Epoch: " + days1.getDays());
System.out.println("2) Days Since Epoch: " + days2.getDays());
} catch (ParseException e) {
e.printStackTrace();
}
Epoch: 1970-01-01T11:09:00.414+01:00
1) Days Since Epoch: 15827
2) Days Since Epoch: 15828
誰も私が間違ってやっている任意のアイデアを持っていますか?
結果は、あなたのタイムゾーンによって異なります。
は、私はそれをソート得るために次の行を追加する必要がありました。エポックの始まりは01-01-1970、00:00:00 ** GMT **です。あなたのタイムゾーンに応じて、2012-05-14 22:00と2012-05-14 02:00は、GMTに変換された時と異なる日になる可能性があります。 – Jesper