CocoaPods trunk is moving to be read-only. Read more on the blog, there are 19 months to go.
TestsTested | ✗ |
LangLanguage | Obj-CObjective C |
License | BSD |
ReleasedLast Release | Mar 2015 |
Maintained by Eric Jensen.
A Cocoa NSFormatter subclass for converting ISO 8601 formatted string to NSDate, and vice versa.
The parser is implemented using re2c. Thanks to re2c, it is much faster than NSDateFormatter is.
Note that the generated parser is committed directly to this repository. This may not be optimal.
There have been attemts to use cocoapods' prebuild command to fix this, with limited success. Check the podspec for attempted solution.
To convert ISO 8601 string to NSDate. You can use NJISO8601DateFromString() function without any configuration.
NSDate *date = NJISO8601DateFromString(@"2011-02-27T11:03:06+09:00");
or, you can use the NJISO8601Formatter the same way as you do with NSDateFormatter.
NJISO8601Formatter *formatter = [[NJISO8601Formatter alloc] init];
NSDate *date = [formatter dateFromString:@"2011-02-07T11:03:06+09:00"];
To convert NSDate to ISO 8601 formatted string.
NJISO8601Formatter *formatter = [[NJISO8601Formatter alloc] init];
NSString *string = [formatter stringFromDate:date];
Also, you can customize output format like this:
[formatter setDateStyle:NJISO8601FormatterDateStyleWeekExtended];
[formatter setTimeZoneStyle:NJISO8601FormatterTimeZoneStyleExtended];
[formatter setFractionSeparator:NJISO8601FormatterFractionSeparatorDot];
[formatter setFractionDigits:6];
[formatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:(8 * 60 * 60)]];