我很难将日期从字符串转换为以下格式的NSDate:
2012-09-05 12:00 GMT-5 +DST到目前为止,我有以下代码:
NSString *myDateStr = @"2012-09-05 12:00 GMT-5 +DST";
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"YYYY-MM-DD HH:mm:ss Z"];
NSDate *date = [formatter dateFromString:myDateStr];我无法控制日期字符串的格式,因为它来自API。
我可能需要编写一个自定义的格式化程序来解析它吗?
发布于 2012-09-06 19:28:26
将日期字符串传递给此函数,该函数将返回NSDate对象。
您可以重新检查您是否获得了正确的值,因为CDT 5 +DST与相同。Reference
将timeZone设置为CDT会得到相同的结果。
-(NSDate *)timeConvert:(NSString *)string
{
NSString *firstString = [string substringToIndex:16];
NSString *lastString = [string substringFromIndex:17];
NSLog(@"%@, %@", firstString, lastString);
NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:lastString];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm"];
[formatter setTimeZone: timeZone];
NSDate *date = [formatter dateFromString:firstString];
return date;
}https://stackoverflow.com/questions/12285870
复制相似问题