如何格式化日期 12/2/31 H, 2:21:41 AM in Objective-c?

How to format date 12/2/31 H, 2:21:41 AM in Objective-c?

这是我再次获得当前日期 2019 年的日期。

12/2/31 H, 2:21:41 AM

任何人都可以帮助我如何将这个日期解析为 Objective-c 中的 NSDate 对象?

此日历格式属于日本日历。

要使用 NSDateFormatter 解析日期,您必须将 H 替换为 Heisei 并将日文日历实例分配给日期格式化程序。

NSString *dateString = [@"12/2/31 H, 2:21:41 AM" stringByReplacingOccurrencesOfString:@"H" withString:@"Heisei"];
NSCalendar *japanese = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierJapanese];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US@calendar=japanese"];
formatter.calendar = japanese;
formatter.dateFormat = @"MM/d/yy G, h:mm:ss a";
NSDate *date = [formatter dateFromString:dateString];
NSLog(@"%@", date);