这个
NSCalendar
有一个单位
NSCalendarUnitEra
代表B.C.和A.D.的粒度比年份高
然而,我注意到,许多图书馆甚至我自己都不关心时代
那么,如何应对时代的建议呢?总是使用0可以吗?(当前纪元是1),还是应该到处更正代码以使用当前纪元?两者的含义是什么?
从
NSDateComponents * dc = [NSDateComponents new];
dc.day = [c[0] integerValue];
dc.month = [c[1] integerValue];
dc.year = [c[2] integerValue];
NSDate * date = [[NSCalendar currentCalendar] dateFromComponents:dc];
到
NSDateComponents * dc = [NSDateComponents new];
dc.era = [[NSCalendar currentCalendar] component:NSCalendarUnitEra fromDate:[NSDate new]];
dc.day = [c[0] integerValue];
dc.month = [c[1] integerValue];
dc.year = [c[2] integerValue];
NSDate * date = [[NSCalendar currentCalendar] dateFromComponents:dc];