Java “数字”之间的关系是什么;41794“;以及今天的日期(即2014年6月4日)?

Java “数字”之间的关系是什么;41794“;以及今天的日期(即2014年6月4日)?,java,date,time,Java,Date,Time,我正试图从网站中提取id41794。但上述数字取决于开始日期(今天的日期)。请参阅下面的网站片段 'index.cfm?fuseaction=c_availabilityGrid.displayAvailabilityGrid&startDate=41794&timeSpan=ww,2&showBeds=1&showMlos=0&showprice=1' 我想知道如何从今天的日期获得值41794,以便我可以将该逻辑放入代码中 java中是否有函数将输入作为日期并返回上述数字 在这件事上的任何帮助

我正试图从网站中提取id
41794
。但上述数字取决于开始日期(今天的日期)。请参阅下面的网站片段

'index.cfm?fuseaction=c_availabilityGrid.displayAvailabilityGrid&startDate=41794&timeSpan=ww,2&showBeds=1&showMlos=0&showprice=1'

我想知道如何从今天的日期获得值
41794
,以便我可以将该逻辑放入代码中

java中是否有函数将输入作为日期并返回上述数字


在这件事上的任何帮助都将不胜感激。

这看起来像是1900年1月1日以来的天数,可能是闰年的一两次失误

看看

Microsoft Excel使用这样的系统。谷歌“Excel序列日期”。

正确无误。使用*,可确认如下所示:

import java.time.Duration;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.Month;

public class Main {
    public static void main(String[] args) {
        LocalDateTime ref = LocalDate.of(1900, Month.JANUARY, 1).atStartOfDay();
        LocalDateTime result = ref.plus(Duration.ofDays(41794));
        System.out.println(result);
    }
}    
输出:

2014-06-06T00:00
了解有关*的更多信息


*无论出于何种原因,如果您必须坚持使用Java6或Java7,您可以使用哪个backport将大部分Java.time功能移植到Java6&7。如果您正在为Android项目工作,并且您的Android API级别仍然不符合Java-8,请检查并确认。

使用不同的日期搜索并检查返回的日期,然后您可以尝试找到一个逻辑,比较bothIt似乎是一个奇怪的值,可能是某个纪元(如1900年1月1日)以来的41794天?该值是否在一天内发生变化,是否随时间线性增长?以什么速度?@Elliott-该值随时间而变化。昨天是41793,今天是41794。看起来像是自动递增的。但为什么是不同的时代呢??。。为什么是1900年而不是1970年?@TheLostMind:我认为我们无法回答“为什么”这个问题。谁知道呢。@TheLostMind:另外,Excel使用这样的日期系统。这是Excel将
=TODAY()
格式化为数字的方式…:P也许是一个.NET的东西?@NPE-太好了!!这实际上是当前日期和1990年1月1日的天数之差。谢谢