的NSString(+时区),以的NSDate
问题描述:
未能的NSString转换成的NSDate的NSString(+时区),以的NSDate
结果:日期=零;
(*注:日期从In App Purchase的收据接收)
NSString * date_string = @"2017-09-24 11:20:21 Etc/GMT";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *date = [dateFormatter dateFromString:date_string];
NSLog(@"date %@",date);
答
试试这个..
NSString * date_string = @"2017-09-24 11:20:21 Etc/GMT";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss VV"];
NSDate *date = [dateFormatter dateFromString:date_string];
NSLog(@"date %@",date);
+0
是的你是对的,它的工作√非常感谢你 –
答
的问题是,你还没有告诉日期格式如何在日期结束时处理有趣的字符序列,即Etc/GMT
。您的格式需要在末尾有time zone specifier。 VV
可能做的伎俩,即
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss VV"];
“(字符串包含时区)” - 但您的格式不包含任何的时区,你抬起头来时区项的日期和时间格式的文件?字符串中是否有“Etc /”?只是似乎令人惊讶。 – CRD
@CRD'Etc/GMT'是一个有效的时区。 – vadian
@vadian - 谢谢,刚刚学到了一些东西。 – CRD