我收到了一个日期字符串,看起来像这样:"2013-03-20T21:13:26-7:00“,这是我从web后端收到的。我不能控制后端,只是一个供参考的。
我更喜欢这样的日期格式: 3/20的9:13 20。
当我执行以下操作时
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
NSDate *date = [dateFormatter dateFromString:@"2013-03-20T21:13:26-7:00"];date为空。
我的第一个想法是,日期字符串看起来很奇怪,也许我应该删除T和"-7:00",因为我收到的每个日期都会附加"-7:00“,我不确定它是用来做什么的。
即使字符串看起来像@"2013-03-20 21:13:26",date仍然是空的。
我承认我不是格式化日期的专家,所以如果我能在这个问题上得到一些帮助,那就太好了。
提前感谢!
发布于 2013-03-22 21:45:19
您必须将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];发布于 2013-03-22 21:42:34
设置dateFormatter的日期格式,您的问题出在日期的最后部分,其次,您可以在日期格式化程序中设置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"];发布于 2013-03-22 21:45:19
设置dateFormat,
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss"];https://stackoverflow.com/questions/15571801
复制相似问题