如何使用 objective c 中的 dateformatter 将字符串解析为日期

How to parse a string to date using dateformatter in objective c

我有一个字符串 '2015-06-23T15:43:04.000+05:30' 我想转换日期格式,例如 2015 年 6 月 23 日 15:43

你可以这样做:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *date = [dateFormatter dateFromString:@"2015-01-01 11:11:11"]; 

试试这个:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"];
NSDate *date = [dateFormatter dateFromString:@"2015-06-23T15:43:04.000+05:30"];
NSString *dateString=[dateFormatter stringFromDate:date];
NSDateFormatter *dF = [[NSDateFormatter alloc] init];
[dF setDateFormat:@"dd MMMM yyyy HH:mm"];
NSString *dateString2 = [dF stringFromDate:dte];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"YYYY-MM-DDThh:mm:ss.sTZD"];
NSDate *date = [dateFormatter dateFromString:@"2015-06-23T15:43:04.000+05:30"];


[dateFormatter setDateFormat:@"dd-MMM-yyyy HH:mm"];
NSString *dateString=[dateFormatter stringFromDate:date];

试试这个:

NSString *temp = @"2015-06-23T15:43:04.000+05:30";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"YYYY-MM-dd'T'HH:mm:ss.SSS'+05:30'"];
NSDate *dte = [dateFormat dateFromString:temp];
NSLog(@"Date: %@", dte);

NSDateFormatter *dF = [[NSDateFormatter alloc] init];
[dF setDateFormat:@"dd MMMM yyyy HH:mm"];
NSLog(@"%@", [dF stringFromDate:dte]);

在控制台中:

日期:2015-06-2312:43:04+0000

2015 年 6 月 23 日15:43