两个日期之间的天数。日期错误在哪里?

斯坦利

我正在尝试计算两个日期之间的天数。这是我的代码:

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 在对整数进行除法运算时会将结果向下舍入,所以我认为您在这里损失了一天:

System.out.println(i1/86400000);//milisec to days

在我尝试Java 8 API 后,它显示了42900 天(请注意,Java 8 和 Excel 都不包括范围内的最后一天):

LocalDate from = LocalDate.of(1900, Month.JANUARY, 1);
LocalDate to = LocalDate.of(2017, Month.JUNE, 16);
long daysBetween = ChronoUnit.DAYS.between(from, to);

由于此处描述的错误,Excel 以错误的方式计算了另一天因此,回答您的问题 -您在四舍五入时松了一天,而 Excel 错误地添加了另一天

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

两个日期之间的天数错误

来自分类Dev

计算两个日期之间的天数?

来自分类Dev

获取两个日期之间的天数

来自分类Dev

列出两个日期之间的天数

来自分类Dev

计算两个日期之间的天数

来自分类Dev

如何找出两个日期之间的天数

来自分类Dev

列出两个日期之间的天数数组

来自分类Dev

计算JPA中两个日期之间的天数

来自分类Dev

Thymeleaf中两个日期之间的天数

来自分类Dev

获取两个日期之间不包括年份的天数

来自分类Dev

如何计算两个日期之间的天数

来自分类Dev

计算java中两个日期之间的天数

来自分类Dev

Python如何计算两个日期之间的天数?

来自分类Dev

如何计算两个日期之间的天数

来自分类Dev

如何获得两个日期之间的月份和天数

来自分类Dev

计算R中两个日期之间的天数

来自分类Dev

Shopify(流动):查找两个日期之间的天数

来自分类Dev

如何计算两个日期之间的星期天数

来自分类Dev

查找Pyspark中两个日期之间的周末天数

来自分类Dev

如何计算oracle中两个日期之间的天数?

来自分类Dev

直到满足条件的两个日期之间的天数差异

来自分类Dev

如何找到两个日期之间的连续天数

来自分类Dev

查找两个日期之间的天数(重复)

来自分类Dev

查找Pyspark中两个日期之间的周末天数

来自分类Dev

计算两个日期之间的天数(不使用模块)

来自分类Dev

计算两个给定日期之间的天数

来自分类Dev

PHP:两个日期之间的天数列表

来自分类Dev

如何计算两个日期之间的星期数,天数

来自分类Dev

PostgreSQL函数/两个日期之间的触发天数