带有时区的 NSDateFormatter 出现问题
Trouble with NSDateFormatter with Timezone
我需要从字符串中获取日期:
13:00:00-05
我试过:
NSString *dateString = @"13:00:00-05";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH:mm:ssX"];
[dateFormatter setDateFormat:@"HH:mm:ssXX"];
DLog(@"date: %@", [dateFormatter dateFromString:dateString]);
两个结果:
date: 2000-01-01 18:00:00 +0000
格式:
[dateFormatter setDateFormat:@"HH:mm:ssZ"];
结果:
date: 2000-01-01 18:00:00 +0000
格式:
[dateFormatter setDateFormat:@"HH:mm:ss-z"];
结果:
date: 2000-01-01 12:59:59 +0000
格式:
[dateFormatter setDateFormat:@"HH:mm:ss-x"];
结果:
date: (null)
但我无法弄清楚 UTC 偏移量的格式。
有什么建议吗?
x
是 -05
.
格式的时区的正确格式
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH:mm:ssx"];
我需要从字符串中获取日期:
13:00:00-05
我试过:
NSString *dateString = @"13:00:00-05";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH:mm:ssX"];
[dateFormatter setDateFormat:@"HH:mm:ssXX"];
DLog(@"date: %@", [dateFormatter dateFromString:dateString]);
两个结果:
date: 2000-01-01 18:00:00 +0000
格式:
[dateFormatter setDateFormat:@"HH:mm:ssZ"];
结果:
date: 2000-01-01 18:00:00 +0000
格式:
[dateFormatter setDateFormat:@"HH:mm:ss-z"];
结果:
date: 2000-01-01 12:59:59 +0000
格式:
[dateFormatter setDateFormat:@"HH:mm:ss-x"];
结果:
date: (null)
但我无法弄清楚 UTC 偏移量的格式。
有什么建议吗?
x
是 -05
.
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH:mm:ssx"];