问题标签 [gregorian-calendar]

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 投票
7 回答
5513 浏览

c# - .NET 是否给了我错误的 2008 年 12 月 29 日的周数?

根据官方(公历)日历,2008 年 12 月 29 日的周数为 1,因为在第 52 周的最后一天(即 28/12)之后,一年中只剩下三天或更少的天数。有点奇怪,但是好的,规则就是规则。

所以根据这个日历,我们有 2008/2009 年的这些边界值

  • 28/12 是第 52 周
  • 29/12 是第 1 周
  • 1/1 是第 1 周
  • 8/1 是第 2 周

C# 提供了一个 GregorianCalendar 类,它有一个函数GetWeekOfYear(date, rule, firstDayOfWeek).

该参数rule是一个具有 3 个可能值的枚举:FirstDay, FirstFourWeekDay, FirstFullWeek. 根据我的理解,我应该FirstFourWeekDay遵循规则,但我尝试了所有这些以防万一。

最后一个参数通知应该将哪个工作日视为一周的第一天,根据该日历,它是星期一,所以星期一。

所以我启动了一个快速而肮脏的控制台应用程序来测试这个:

...这就是我得到的

因此,正如我们所见,上述组合均不符合官方日历(如果您赶时间,请注意 29/12 永远不会成为第 1 周)。

我在这里做错了什么?也许我缺少一些明显的东西?(现在是周五,比利时的工作时间很晚,请多多包涵;))

编辑:也许我应该解释一下:我需要的是一个适用于任何年份的函数,返回与我链接的公历相同的结果。所以 2008 年没有特殊的解决方法。

0 投票
1 回答
2754 浏览

java - Java 1.5 Calendar#compareTo() 混淆

好的,我正式被这个难住了。我有一个 GregorianCalendar 对象,我想确定它是在过去、现在还是将来。到目前为止,Calendar#compareTo文档让我感到困惑,因为我得到了不稳定的结果。一个简单的测试类将说明我的问题:

和输出:

我对 compareTo 的理解是最后一行应该是-1。谁能告诉我我做错了什么?

0 投票
1 回答
1158 浏览

cocoa - 创建一个新的 NSCalendar 日历

我希望能够在 iPhone 上使用 NSCalendar 在公历和儒略历之间进行转换(注意:不是“儒略日期”)。如何子类 NSCalendar 以使用儒略历?我想这样做而不考虑 1582 或 1752 或任何给定的年份。

0 投票
3 回答
825 浏览

java - 公历

我正在做一个作业,它涉及使用 GregorianCalendar。规范说我需要使用 setLenient(false); 我该怎么做呢?我还需要设置一个固定日期(2009 年 1 月 1 日),这样我的程序的第一天就一直是这样。

它还说通过以下方式访问日、月和年:

要将日期添加 n 天,请使用字段编号 5 调用 add 方法: add(5, n);

减法:add(5, -n);

有人可以解释这意味着什么以及如何实施吗?

0 投票
2 回答
2766 浏览

java - 公历固定日期

好的,我想让我的程序打印出日期:1/1/2009

但这就是它打印出来的:

2009 年 1 月 1 日星期四 00:00:00 EST

从这段代码

如何更改它以使其仅打印 2009 年 1 月 1 日?

0 投票
1 回答
178 浏览

java - 公历月份

当我运行此代码时,我得到 1/0/2009。当我改变月份时,我也会得到同样的结果。它有什么问题,我该如何解决?

0 投票
2 回答
49756 浏览

java - 将日期添加到日期

我有一个需要在 09 年 1 月 1 日开始的程序,当我开始新的一天时,我的程序将在第二天显示。这是我到目前为止所拥有的:

我在 'newDay = startDate.add(5, 1);' 中发现错误为 void 但预期为 int 我该怎么办?

0 投票
7 回答
1349 浏览

c# - c# 一年中的最后一个星期日

如何在 C# 中获取一年中最后一个星期日的日期?gregoriancalendar 课程会有帮助吗?

0 投票
3 回答
5352 浏览

java - 为什么 GregorianCalendar.getInstance 包含 Julian Calendar 类型的 calsys 和 cdate

我尝试将日期值设置为具有默认值的 PreparedStatement,但该值有时会作为 JulianValue 返回。例如(假设 spanBegin 和 spanEnd 为空)

在第 3 行,由于日期 0000 年 1 月 1 日由儒略历限定,因此 CDate 变为儒略历。但是,下一个 Date 即使是在 9999 年,它的 CDate 仍然是儒略历。我不得不创建另一个公历实例来解决这个问题。

问题是,这是日期对象的预期行为还是错误?实际上使用 GregorianCalendar.getInstance() 表明 cdate 有时设置为 JulianCalendar。

0 投票
2 回答
404 浏览

database - 您是否曾经在数据库应用程序中要求使用非公历日期?

背景:我注意到主要数据库仅支持公历。因此,用公历以外的任何东西构建数据库应用程序似乎很困难。

如果您曾经在数据库应用程序中使用过非公历日期,我很想知道您的用例的上下文。

例如,如果您住在印度,那么(粗略地说)印度构建的软件中有多少百分比会使用非公历?它是常见的,还是罕见的?缺乏对非公历的支持会让您烦恼吗?