Ios NSDateFormatter赢得';t格式奇怪的日期字符串
因此,我收到一个日期字符串,它看起来像这样:“2013-03-20T21:13:26-7:00”,我从web后端收到。我无法控制后端,仅供参考 我倾向于将日期格式化为:3/20时的晚上9:13 当我做以下事情时Ios NSDateFormatter赢得';t格式奇怪的日期字符串,ios,objective-c,date,nsdate,nsdateformatter,Ios,Objective C,Date,Nsdate,Nsdateformatter,因此,我收到一个日期字符串,它看起来像这样:“2013-03-20T21:13:26-7:00”,我从web后端收到。我无法控制后端,仅供参考 我倾向于将日期格式化为:3/20时的晚上9:13 当我做以下事情时 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; NSDate *date = [dateFormatter dateFromString:@"2013-03-20T21:13:26-7:00"]; 日期
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
NSDate *date = [dateFormatter dateFromString:@"2013-03-20T21:13:26-7:00"];
日期
为空
我的第一个想法是日期字符串看起来很奇怪,也许我应该删除T和“-7:00”,因为“-7:00”会附加到我收到的每个日期,我不确定它的用途
即使在字符串看起来像@“2013-03-20 21:13:26”之后,date
仍然为空
我承认我不擅长格式化日期,所以如果我能在这个问题上得到一些帮助,那就太好了
提前谢谢 设置日期格式化程序的日期格式,您的问题在于日期的最后一部分,其次您可以在日期格式化程序中设置T,如下所示
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssz"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
NSDate *date = [dateFormatter dateFromString:@"2013-03-20T21:13:26-7:00"];
您必须将dateFormat设置为dateFormatter
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssz"];
NSDate *date = [dateFormatter dateFromString:@"2013-03-20T21:13:26-7:00"];
[dateFormatter setDateFormat:@"hh:mma 'at' MM/yy"];
NSString *dateString = [dateFormatter stringFromDate:date];
设置日期格式
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss"];
我已经有了,但正如我在上面所发布的,我甚至没有到达那一行,因为在执行dateFromString之后,NSDate对象已经为空