2013-03-05 127 views
-2

我有一个的NSString:@"05.03.2013, 21:33" 我想从这个字符串得到的NSDate烦恼与NSDateFormatter

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"dd.MM.yyyy',' hh:mm"]; 
NSDate *discussionDate = [dateFormat dateFromString:discModel.date]; 

之后,我把的NSLog和它打印比discussionDatenil

+1

什么,你做过尝试解决这个你自己吗? – 2013-03-05 18:54:13

+0

您是否检查过discModel.date不是零? – Ares 2013-03-05 18:55:11

+0

discModel.date是NSString:@“05.03.2013,21:33” – 2013-03-05 18:55:36

回答

1

尝试

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
          [dateFormat setDateFormat:@"dd.MM.yyyy',' HH:mm"]; 
+0

谢谢。它可以工作,但在NSDate中的日期字符串和日期在4小时内不同。可能是,这与UTC时间有关。 – 2013-03-05 19:01:53

+0

确定是UTC – vikingosegundo 2013-03-05 19:02:13

1

您应该使用HH而不是hh作为您的时间格式

,这是好主意,设置时区也避免了时间的变化

[dateFormat setTimeZone:[NSTimeZone timeZoneWithName:@"CET"]];