关于stackoverflow的常见问题是如何从日期获取年中的日期,但如何从年中的日期获取日期?
我正在使用下面的代码来生成年中的第几天,但是如何进行相反的操作呢?
// Calculate Day of the Year
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSUInteger dayOfYear = [gregorian ordinalityOfUnit:NSDayCalendarUnit inUnit:NSYearCalendarUnit forDate:[NSDate date]];
setDayOfYear = dayOfYear;
return setDayOfYear;发布于 2013-07-10 15:17:05
假设您知道所需的年份和日期的实际时间,并且设置了正确的区域设置和时区,则只需将一年中的日期和年份从组件转换回日期即可。同样,您可能需要决定您的应用程序需要对time组件做什么,并且必须确保日期和年份对日历有实际意义,但是假设您在示例中列出的公历和2013年的第200天( 2013年7月19日),您可以这样做:
NSDateComponents* components = [[NSDateComponents alloc] init];
[components setDay:200];
[components setYear:2013];
NSDate* july19_2013 = [gregorian dateFromComponents:components];如果运行此命令,我将得到的日期为2013年7月19日@ 07:00,因为我当前的区域设置位于相当于美国/洛杉矶的时区,而我没有配置日历。
https://stackoverflow.com/questions/17564230
复制相似问题