私は2つの日付間の日数を計算しようとしています。2つの日付の間の日数。日付のエラーはどこですか?
public class Main {
public static void main(String[] args) {
SimpleDateFormat format = new SimpleDateFormat("dd.MM.yyyy");
Date date1 = null;
Date date2 = null;
String str1 = "01.01.1900";
String str2 = "16.06.2017";
try{
date1 = format.parse(str1);
date2 = format.parse(str2);
} catch (Exception e){
e.printStackTrace();
}
long i1 = date2.getTime() - date1.getTime();
System.out.println(i1/86400000);//milisec to days
}
}
結果は次のとおりです:42899日 は、ここに私のコードです。
しかし、我々はEXCELでその減算を再確認した場合、結果は42901
真実の結果であり、誰もが私を説明することができますしてください?その結果、ラウンド
です。代わりに、 'java.time'パッケージを見て、あなたのユースケースに最も適したクラス(この場合はおそらく' LocalDate')を見つけるべきです。 –
「01.01.1900」や「02.01.1900」など、より近い日付を使用してコードをテストする必要があります。たぶんあなたは問題がどこにあるのかを知ることができます(あるいは、Excelはあなたとは異なる何かを数えます)。 –
同じ2日間の差 –