2013-03-05 246 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"]];