我正在尝试弄清楚如何创建设置为年底的NSDate
。即2013年,我找到了一种方法,您可以通过添加秒数来获得自1970年以来的时间。我看不到这一点,因为cal秒必须花几年的时间。
我找到了以下代码将NSDateComponents
设置为年底。
NSDateComponents *comps = [[NSDateComponents alloc] init];
[comps setYear:2012];
[comps setMonth:12];
[comps setDay:11];
[comps setHour:0];
[comps setMinute:0];
[comps setSecond:0];
有没有一种方法可以从中获得NSDate
?我要做的是通过使用
NSDateComponents *timeDifference = [[NSCalendar currentCalendar]
components: NSMonthCalendarUnit| NSDayCalendarUnit|NSHourCalendarUnit|NSMinuteCalendarUnit|NSSecondCalendarUnit fromDate:[NSDate date] toDate:comps options:0];
在结束日期需要NSDate
。
是的,有。
使用
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDate *newDate = [calendar dateFromComponents:comps];
您可以根据您的要求更改硬件标识符。
请参阅此链接以获取详细信息。
引起了一些可能指向正确方向的代码。
NSDateComponents *comps = [[NSDateComponents alloc] init];
[comps setYear:2012];
[comps setMonth:12];
[comps setDay:11];
[comps setHour:0];
[comps setMinute:0];
[comps setSecond:0];
NSDate *myDate = [[NSCalendar currentCalendar] dateFromComponents:comps];