2009-10-15 46 views
1

我想从NSDateFormatter使用dateFromString方法,但它以某种方式不适合我。我做了一个测试用例来展示我的问题:NSDateFormatter混淆

NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; 
[dateFormatter setDateFormat:@"EEE, d MMM yyyy HH:MM"]; 

NSString *kkk = @"Thu, 15 Oct 2009 10:00"; 
NSString *test = [dateFormatter stringFromDate:[NSDate date]]; 

NSLog(test); 
-- result is: Thu, 15 Oct 2009 14:10 

NSDate *d = [dateFormatter dateFromString:kkk]; 
--result is nil 

我在iPhone上。

回答

2

我认为给定的格式尤其是HH:MM是问题,因为大写的MM表示月份而不是分钟。对于分钟使用小写毫米 - 发现在http://www.stepcase.com/blog/2008/12/02/format-string-for-the-iphone-nsdateformatter/

+0

omg ....谢谢! – BobC 2009-10-15 13:56:55

+2

其实,更好的参考是Unicode标准:http://unicode.org/reports/tr35/tr35-6.html#Date_Format_Patterns – nall 2009-10-15 15:37:52

+0

@nall伟大的东西,谢谢。 苹果应该也包括在它的文档中。 – Biranchi 2009-11-18 11:52:24