java - 不同时区的两个 java 日期之间经过的天数

标签 java excel date time timezone

我有两个日期,但一个是 CET,另一个是 CEST。

   Calendar calFrom = Calendar.getInstance();
            calFrom.set( 2013, 2, 20,0,0,0);
            Calendar calTo = Calendar.getInstance();
            calTo.set( 2013, 3, 5,0,0,0);

        long daysPassed= (calTo.getTime().getTime() - calFrom.getTime().getTime()) / (1000 * 60 * 60 * 24);
        System.out.println("calFrom: " + calFrom.getTime());
        System.out.println("calTo: " + calTo.getTime());
        System.out.println("daysPassed: " + daysPassed);

输出显示:

calFrom: Wed Mar 20 00:00:00 CET 2013
calTo: Fri Apr 05 00:00:00 CEST 2013
daysPassed: 15

但是 Microsoft Excel 表示这两天的差异是 16!

如何像Excel一样计算过去的天数?

最佳答案

关于java - 不同时区的两个 java 日期之间经过的天数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23029977/

相关文章:

java - 在 AWS Elastic Beanstalk 上增加 Nginx 的 client_max_body_size。 java 11

Excel 每行分隔一个单元格值

python excel csv 帮助。如何进行格式化

javascript - 是否有用于操作日期的 jQuery 时间/日历插件?

r - 如何从 R 中的开始日期和结束日期列表中计算一组中的当前人数

java - struts.config 到 struts2 的转换

java - NetBeans 7.0 是否内置了对 spring 3.0 的支持?

java - 检查Set中是否存在java对象

excel - 四阶和五阶多项式回归在 Excel 中不起作用

linux - 使用 shell 脚本将文件中的日期格式从 dd/mm/yyyy 更改为 yyyy-mm-dd