【发布时间】:2019-07-01 02:08:35
【问题描述】:
我有一串日期
String dateOfOrder = "02/06/2019";
我想根据我的 dateOfOrder 找出一年中的哪一周。我将字符串设置到 Calender 类中,并尝试使用这种方法,即
int WeekOfYear = c.get(Calendar.WEEK_OF_YEAR);
但是当我通过http://www.whatweekisit.org/在线查看时
我应该得到的预期一年中的第 22 周,但我最终得到第 23 周。无论如何要解决这个问题?
【问题讨论】:
-
你能分享你如何设置日历的代码
-
在编程中计数是从0开始的,所以你得到的数字比正确的多,所以当你得到结果时你应该减少一个,然后显示正确的一个
-
不同地方的周数不同。虽然这在 2019 年可能不是什么大问题,但您应该决定:您想要美国的周数吗?
-
2019 年 6 月 2 日是一个星期日。在美国和其他一些地方,新的一周从星期日开始,所以这已经是第 23 周。根据国际标准 (ISO 8601),新的一周从星期一开始,所以星期天在旧周,因此第 22 周。
-
我建议你不要使用
Calendar。该课程设计不良且早已过时。而是使用LocalDate和java.time, the modern Java date and time API 中的其他类。
标签: java android java-calendar