Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/118.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios NSDateFormatter赢得';t格式奇怪的日期字符串_Ios_Objective C_Date_Nsdate_Nsdateformatter - Fatal编程技术网

Ios NSDateFormatter赢得';t格式奇怪的日期字符串

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"]; 日期

因此,我收到一个日期字符串,它看起来像这样:“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"];
日期
为空

我的第一个想法是日期字符串看起来很奇怪,也许我应该删除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对象已经为空