gna*_*her 9 iphone objective-c nsdate
我花了太多时间(超过一个小时)来完成我的两分钟任务.在iPhone上:
NSString * dateString = @"2010-09-11T00:00:00+01:00";
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"YYYY-MM-dd'T'HH:mm:ssTZD"];
NSDate *date = [formatter dateFromString:dateString];
Run Code Online (Sandbox Code Playgroud)
结果:日期==无
我错过了什么!(除了我的截止日期)
问候,
肯
Tom*_*mmy 12
根据unicode规范, TZD不是定义的格式化程序.您链接到其他地方的文档是某人向W3C提出的建议,仅供讨论.苹果公司遵循的unicode标准是一个完整的标准,来自不同的机构.
最接近你想要的是ZZZ(即@"YYYY-MM-dd'T'HH:mm:ssZZZ"),但中间没有冒号.所以你需要使用字符串:
2010-09-11T00:00:00+0100
Run Code Online (Sandbox Code Playgroud)
而不是你现在拥有的那个以+01:00结束.
例如以下内容:
NSString * dateString = @"2010-09-11T00:00:00+0100";
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"YYYY-MM-dd'T'HH:mm:ssZZZ"];
NSDate *date = [formatter dateFromString:dateString];
NSLog(@"%@", date);
Run Code Online (Sandbox Code Playgroud)
记录2010-09-10 23:00:00 GMT的有效日期对象.
| 归档时间: |
|
| 查看次数: |
4482 次 |
| 最近记录: |