2012-03-05 19 views
1

の間に奇妙な衝突私は、文字列の日付を持っている:NSDate - シミュレータとデバイス

newsItem.Date = @"2/8/2012 7:21:09 PM"; 

とコード: 2012-02-08:

NSString* dateString = newsItem.Date; 
NSDateFormatter* firstDateFormatter = [[[NSDateFormatter alloc] init] autorelease]; 
[firstDateFormatter setDateFormat:@"MM/dd/yyyy hh:mm:ss a"]; 
NSDate* date = [firstDateFormatter dateFromString:dateString]; 

シミュレータAには以下のように適切な日付を得ました17:21:09 +0000 しかし、デバイスでは、date = nilです。どうして?

答えて

3

おそらく、デバイスが異なるロケールを使用している可能性があります。その文字列は有効な日付ではありません。以下を追加してみてください:

firstDateFormatter.locale = [[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]; 

dateFromStringを呼び出す前に。

+0

ありがとうございました! – Stas

関連する問題