NSCalendarUnitEra я должен заботиться в общем случае? - PullRequest
0 голосов
/ 21 января 2019

NSCalendar имеет единицу NSCalendarUnitEra, которая представляет B.C. и А.Д., который имеет более высокую степень детализации, чем год

Однако я заметил, что многие библиотеки и даже я не заботимся об Эре

Так, какова рекомендация по поводу эры? нормально ли всегда использовать 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];
...