NSString 与 NSDate 的互相转换 本地日期字符串与UTC日期字符串的转化


// NSString 转化为 NSDate

- (NSDate *) stringToDate: (NSString *)dateStr

{

    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];

    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

    NSDate *date = [dateFormatter dateFromString:dateStr];

    return date;

}


// NSDate 转化为 NSString

- (NSString *) dateToString: (NSDate *)date

{

    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];

    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

    NSString *dateStr = [dateFormatter stringFromDate:date];

    return dateStr;

}


// 将本地日期字符串转为UTC日期字符串


//本地日期格式:2013-08-03 125351

//可自行指定输入输出格式


- (NSString *)getUTCFormatFromLocalDateStr: (NSString *)localDateStr

{

    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];

    //输入格式

    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

    NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"UTC"];

    [dateFormatter setTimeZone:timeZone];

    NSDate *dateFormatted = [dateFormatter dateFromString:localDateStr];

   

    //输出格式

    [dateFormatter setDateFormat:@"yyyy-MM-dd 'T' HH:mm:ss Z"];

    NSString *dateString = [dateFormatter stringFromDate:dateFormatted];

    return dateString;


}


//UTC日期字符串转为本地时间字符串

//输入的UTC日期格式:2013-0803 T045351+0000


- (NSString *)getLocalDateFormatFromUTCDateStr:(NSString *)utcDateStr

{

    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];

    //输入格式

    [dateFormatter setDateFormat:@"yyyy-MM-dd 'T' HH:mm:ss Z"];

    NSTimeZone *localTimeZone = [NSTimeZone localTimeZone];

    [dateFormatter setTimeZone:localTimeZone];

    NSDate *dateFormatted = [dateFormatter dateFromString:utcDateStr];

    

    //输出格式

    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

    NSString *dateString = [dateFormatter stringFromDate:dateFormatted];

    return dateString;


}



你可能感兴趣的:(NSString 与 NSDate 的互相转换 本地日期字符串与UTC日期字符串的转化)