来自NSString的NSDate - dateFromString返回nil [英] NSDate from NSString - dateFromString returns nil

查看:114
本文介绍了来自NSString的NSDate - dateFromString返回nil的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想从日期字符串中获取NSDate对象,但它返回nil。我究竟做错了什么?谢谢!

I want to get a NSDate object from a string of date, but it returns nil. What am I doing wrong? Thanks!

NSString *dateString = @"2012-04-05T13:27:32.369Z";

NSDateFormatter* df = [[NSDateFormatter alloc]init];
[df setDateFormat:@"YYYY-MM-dd'T'HH:mm:ss.SSSZ"];
NSDate* date = [df dateFromString:dateString];
NSLog(@"1%@",date);
[df release];


推荐答案

必须引用Z:

NSDateFormatter* df = [[NSDateFormatter alloc]init];
NSString *dateString = @"2012-04-05T13:27:32.369Z";
[df setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"];
NSDate* date = [df dateFromString:dateString];
NSLog(@"1: %@",date);

NSString *newDateString = [df stringFromDate:date];
NSLog(@"2: %@",newDateString);

NSLog输出:


1:2012-04-05 17:27:32 +0000

2:2012-04-05T13:27:32.369

1: 2012-04-05 17:27:32 +0000
2: 2012-04-05T13:27:32.369

请记住 NSLog 使用当前时区的 NSDate 默认格式化程序。

Keep in mind that NSLog uses the NSDate default formatter with the current timezone.

请参阅: Date_Field_Symbol_Table

这篇关于来自NSString的NSDate - dateFromString返回nil的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆