software-mariodiana
5/23/2017 - 5:49 PM

Convert NSDate to standard format for JSON string.

Convert NSDate to standard format for JSON string.

// Category on NSDate:
//
//     NSDate+Json.h 
//
// We'll use "xyz" as a placeholder for the method prefix.
//

#import <Foundation/Foundation.h>

@interface NSDate (Json)

/**
 * Return date as string in JSON format: YYYYMMDDTHH:MM:SS.SSSZ (UTC).
 */
- (NSString *)xyz_jsonDate;

@end

@implementation NSDate (Json)

- (NSString *)xyz_jsonDate {
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
    [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZZZZ"];
    return [dateFormatter stringFromDate:self];
}

@end