相关疑难解决方法(0)

一年中的NSDate(快速)

如何用swift找到一年中的天数?有没有一种我没有看到的简单方法,或者我必须找到从1月1日到当前日期的秒数并除以一天中的秒数?

nsdate ios swift

20
推荐指数
2
解决办法
9457
查看次数

如何计算目标C中今年的天数

如何计算任何日历的一年中的天数,而不仅仅是格里高利.我试过这个

NSUInteger *days = [[NSCalendar currentCalendar] rangeOfUnit:NSDayCalendarUnit inUnit:NSYearCalendarUnit forDate:[NSDate date]];

但这给了我当月的天数而不是当年的天数.

iphone objective-c

5
推荐指数
3
解决办法
7059
查看次数

iPhone - 获取两个日期之间的天数

我正在为iPhone编写一个GTD应用程序.对于应有的任务,我希望显示诸如"明天到期"或"到期日"或"到期7月18日"之类的内容.显然,即使任务距离不到24小时,我也需要显示"明天"(例如,用户在星期六晚上11点检查并看到周日早上8点有任务).所以,我写了一个方法来获取两个日期之间的天数.这是代码......

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd-HH-mm"];

NSDate *nowDate = [dateFormatter dateFromString:@"2010-01-01-15-00"];
NSDate *dueDate = [dateFormatter dateFromString:@"2010-01-02-14-00"];

NSLog(@"NSDate *nowDate = %@", nowDate);
NSLog(@"NSDate *dueDate = %@", dueDate);

NSCalendar *calendar = [NSCalendar currentCalendar];

NSDateComponents *differenceComponents = [calendar components:(NSDayCalendarUnit)
                                                     fromDate:nowDate
                                                       toDate:dueDate
                                                      options:0];

NSLog(@"Days between dates: %d", [differenceComponents day]);
Run Code Online (Sandbox Code Playgroud)

......这是输出:

NSDate *nowDate = 2010-01-01 15:00:00 -0700
NSDate *dueDate = 2010-01-02 14:00:00 -0700
Days between dates: 0
Run Code Online (Sandbox Code Playgroud)

如您所见,该方法返回不正确的结果.它应该返回1作为两天之间的天数.我在这做错了什么?

编辑:我写了另一种方法.我没有进行过广泛的单元测试,但到目前为止似乎有效:

+ (NSInteger)daysFromDate:(NSDate *)fromDate inTimeZone:(NSTimeZone *)fromTimeZone untilDate:(NSDate *)toDate inTimeZone:(NSTimeZone *)toTimeZone {

    NSCalendar *calendar = …
Run Code Online (Sandbox Code Playgroud)

iphone cocoa cocoa-touch nsdate nsdatecomponents

5
推荐指数
1
解决办法
6538
查看次数

iOS如何获得一年中的天数?

可能重复:
如何计算目标C中特定日期的一年中的某一天

我需要获得一年中的当天数,并且不知道哪个是最好的方法.

例:

21-jan-2012 - > 21

2-feb-2012 - > 33

2012年3月2日 - > 62

2011年3月2日 - > 61

有任何想法吗?

谢谢

numbers nsdate days leap-year ios

2
推荐指数
1
解决办法
3690
查看次数