OGeek|极客世界-中国程序员成长平台

标题: iOS 从一年中的某一天获取日期 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 12:30
标题: iOS 从一年中的某一天获取日期

关于 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;



Best Answer-推荐答案


假设您知道您想要的年份并且日期的实际时间并不重要,并且您设置了正确的语言环境和时区,您只需将一年中的日期和年份从组件转换回日期.同样,您可能需要决定您的应用程序需要对时间组件执行什么操作,并且您必须确保日期和年份实际上对日历有意义,但假设您在示例中列出的公历和第 200 天2013 年(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,因为我当前的语言环境是在相当于 America/Los_Angeles 的时区,并且我没有配置日历。

关于iOS 从一年中的某一天获取日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17564230/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4