问题标签 [julian-date]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
10846 浏览

java - 将 01/01/0001 日期作为星期一是否正确?

我正在编写一个程序来显示给定日期的日期。(例如 1970 年 1 月 1 日的星期四。)在尝试时,我遇到了一些问题。

这是我的程序。

在这段代码中,当我将 01/01/0001 作为星期一并计算其他日子时。我得到了正确的答案。

但是在 www.timeanddate.com网站上,他们将 01/01/0001 作为星期六。但对于最近的其他日期(比如 2011 年 7 月 17 日),他们仍然给出了正确的答案(如星期日)。

我可以猜测这些滞后是由于 Julier 系统迁移到 Gregorian 系统。

但是我怀疑我从 0001 年计算天数的方法是否正确?

我也有疑问是否采取 01/01/0001 日期是星期一或星期六。(如果我把星期六作为我的第一天,我会得到错误的答案。)

有人请解释一下。

提前致谢。

0 投票
1 回答
3738 浏览

datetime - XSL 日期和时间差计算 (XSLT 1.0)

使用 XSLT 1.0 并按以下格式接收日期:

我需要能够计算其中两个之间的差异。但是,我不能使用任何扩展

我也有其他限制:

  • 我受限于可以在 XSLT 中使用的命名空间,
  • 在我使用 xsl 样式表(第 3 方应用程序)的地方,它将无法正确处理 xsl 中的任何包含/导入操作。

所以实际上,我需要使用的 xslt 必须是自包含的,因为任何被调用或引用的东西都必须在 xslt 本身中。

我曾考虑过获取日期和时间并将其转换为朱利安序列号并以 Excel 的方式处理日期数学。例子 -

其中小数点左边的所有内容都以天为单位,小数点右边的所有内容都是时间(即 0.168854166666280 * 24 = 4.0524999999990680,或 4 小时和 0.0525% 小时,或 3.15 分钟)。

有没有人在不使用扩展的情况下在 XSLT 1.0 中完成过这种类型的经过日期时间数学?

如果有我可以重新使用的现有代码集,将不胜感激任何想法、建议或参考。

编辑 -

我决定继续进行上述操作,并在 TIME 的转换上遇到了障碍。

我使用的示例是:开始时间 = 08:19:37 结束时间 = 15:58:33

这是 7:38:56 的持续时间/差异(顺便说一句,这仅用于当天计算 - 如果 Endtime < Start Time 或 Day > 0,我会抛出错误)。

为了到达时间,我将所有内容都转换为秒,然后进行数学计算。08:19:37 转换为 29977(8 * 3600 小时 + 19 * 60 分钟 + 秒)。15:58:33 转换为 57513(15 * 3600 小时 + 58 *60 分钟 + 秒)。

相差 27536 秒。

我得到: 27536/3600 =7.6488888888888888888 <-- 整数部分是小时然后 27536 - 25200 = 2336 <-- 25200 = 7 小时 * 3600 秒 2336/60 = 38.93333333333333333 <-- 整数部分是 3然后差 2336 - 2280 = 56 秒以上。

但是,如果我尝试获取这些数字的整数部分,则会对其进行四舍五入。

上面的变量 q 有 7.648888888888888888 (这是正确的)但是,一旦格式号发生,t-hrs-diff 现在有“08”,使我的时间不正确。

我知道任何其他格式尝试获取数字的整数部分都会导致舍入。

substring-beforesubstring-after之外- 这将(我认为)让我必须在下一次计算中使用之前将结果转换为数字 - 还有其他方法可以获取数字的未更改整数部分而不是必须从字符串转换为数字才能使用这些片段?

0 投票
3 回答
578 浏览

c++ - c++公历和儒略历继承

我有这个困境,我需要在格里高利和儒略历的不同继承类型之间进行选择。我想要一个名为 Date 的类作为基类。我的问题如下:我应该有一个继承自日期类的公历类和继承自日期类的 Julian 类吗?还是应该只有 Gregorian 类从 Date 继承,而 Julian 应该从 Gregorian 继承,反之亦然?或者我应该在 Date 下面有一个从 Date 继承的类,并让 Gregorian 和 Julian 从该类继承?

我个人会选择两者都从 Date 继承的第一个替代方案,这是一个不错的选择。我能得到一些关于这个的意见吗?

0 投票
2 回答
6267 浏览

sqlite - SQLite 中的 Julian Day 到 ISO 8601 字符串

我有一个表,将日期/时间值存储为 SQLite 中的儒略日(使用 julianday() 函数)。当我阅读它们时,我似乎无法弄清楚如何将它们转换回 ISO 8601 样式字符串 (YYYY-mm-ddThh:m:ss.sss)?

0 投票
2 回答
8891 浏览

bash - 在 UNIX 中将 Julian 时间戳转换为常规时间

我需要使用 Bash 将 Julian 时间戳转换为 UNIX 中的常规时间戳。

在 Tandem OS 上,转换非常简单 -

示例:212186319010244541

我希望在 UNIX 环境中做同样的事情。转换将成为解析器脚本的一部分。所以单行将不胜感激。

更新

Tandem 上的 INTERPRETTIMESTAMP 内置函数返回以空格分隔的九个数字列表,包括儒略日数、年、月、日、小时、分钟、秒、毫秒和微秒。

0 投票
1 回答
932 浏览

algorithm - 为什么日历转换库围绕儒略日展开?

我目前正在编写一些 php 代码来将日期从公历转换为希伯来历。查看 php 日历功能,我发现它具有将公历转换为儒略日和儒略日转换为希伯来文的功能。但是,我找不到直接从公历转换为希伯来语的函数。

出于好奇,我想看看是否可以直接转换。不过,在研究这一点时,我发现将日期转换为儒略日,然后转换为所需的日历系统似乎是标准的。

我在几个库中找到了这个: http ://www.php.net/manual/en/ref.calendar.php http://www.fourmilab.ch/documents/calendar/calendar.js

并在此处的论坛帖子中提到: http ://www.physicsforums.com/showthread.php?t=173119

困扰我的是为什么!这是某个团体决定的标准吗?历史上只是这样吗?

想出直接转换日期的算法不是更有效吗?或者相反,是什么让朱利安时代如此高效?

0 投票
5 回答
37192 浏览

sql - 将 JDE 儒略日期转换为公历

我正在尝试转换JDE 日期,并积累了大量信息,并认为我会尝试执行 SQL 转换函数来简化一些任务。

这是我想出的函数,我简称为“ToGregorian”

  1. 采用“朱利安”字符串。
  2. 取第一个字母并将其添加到世纪,从 19 日开始。
  3. 从接下来的 2 个字符开始添加十年和年。
  4. 最后添加天数,即最后 3 个字符,并减去 1,因为它在第一个设置中已经有 1 天。(例如 2011-01-01)
  5. 结果前:111186=>2011-07-05 00:00:00.000

在我看来,这有点笨拙和矫枉过正,我希望有更好的方法来做到这一点。也许我进行了太多转换,或者我应该一起使用不同的方法?

任何建议如何改进功能?
也许是一种不同的、更好的方法?
不介意它是否也可以更具可读性...

我还有一个内联版本,例如,如果我只有读取权限并且不能使用函数,这看起来也很乱,是否可以使它更具可读性或更好?

0 投票
2 回答
487 浏览

math - 日光时间计算

我在尝试使用此公式计算白天时间时无法获得此表达式的数值。当我评估这个表达式时,它最终给出了一个 NaN。

J 代表儒略日。(例如今天 J = 172;)

任何帮助都将非常有价值,谢谢

0 投票
1 回答
2399 浏览

vb.net - 在 VB 中转换儒略日

我需要将一组儒略日转换为正确的日期时间格式 dd/mm/yyyy HH:MM:SS

问题似乎是他们是某个日期的朱利安日,我假设标准是 1970 年?下面是我的代码:

功能:

调用(我现在已经硬编码了一个值):

这给了我价值“5/21/1970 5:00:02 PM”

看来这一年已经过去了,因为我知道数据来自 2011 年。有人可以指导我吗?

0 投票
1 回答
8077 浏览

sql - 什么是儒略日期格式

我已经通过 SQL 中的查询来将我们输入的数字转换为 word 格式查询是

通常,儒略日期格式会给出添加到儒略日期的天数,即31-DEC-4712 我无法理解它如何将每个数字转换为单词。

帮助我了解它的实际作用......