我正在尝试计算两个日期之间的日历周数。我正在使用以下代码:
[cal ordinalityOfUnit:NSCalendarUnitWeekOfYear inUnit:NSCalendarUnitEra forDate:thenDate];
[cal ordinalityOfUnit:NSCalendarUnitWeekOfYear inUnit:NSCalendarUnitEra forDate:nowDate];
日期为15-1-2017,一个星期日,结果为105192周,而16-1-2017,一个星期一,结果为105193.这表明它使用星期一作为一周的第一天。我已验证cal.firstWeekday
为1.如果我将inUnit
从NSCalendarUnitEra
更改为NSCalendarUnitYear
,则说明其正常工作。有没有解决的办法?
我想我可以从两个日期减去一天,但这似乎非常hackie。
答案 0 :(得分:0)
经过多次试验,如果您确定所有日期都是格林威治标准时间,并且您将cal
timeZone设置为GMT,那么它可以正常运行。