2012-01-10 67 views
0

我有NSDateFormatter和iOS的问题。我居然发现了一个认可和这里的问题的解释:iOS 5打破NSDateFormatter?

http://www.cocoanetics.com/2011/12/ios-5-breaking-nsdateformatter/

然而,我的大脑是无法处理这些信息翻译所有为我的特定情况下的解决方案。我希望你们的朋友们能够帮助我:

任何人都可以告诉我如何在iOS5中做以下工作吗?它曾经被做工精细:

NSLocale *myLocale = [[NSLocale alloc] initWithLocaleIdentifier:@”en_GB”]; 
[inputFormatter setLocale: myLocale]; 
[myLocale release]; 
[inputFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss Z"]; 
NSDate *formattedDate = [inputFormatter dateFromString: feedDateString]; 
NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; 
[outputFormatter setDateFormat:@"EEEE d MMMM"]; 

输入的字符串,这是我无法控制,会像“星期二,2012年1月3日00:00:00 +0100“ 当我登录[outputFormatter stringFromDate:格式化日期]我得到空

原始的语言环境是“en_US”,但我改变了这一点,希望这会有所帮助。

这也将有助于在这个职位的人来说,这似乎是一条死胡同后:

NSDateFormatter on ios 5 - any other way to use?

回答

0

给大家花了脑时间在这:这完全是我自己的愚蠢错误: 输入字符串需要进行格式化并没有“星期一,2012年2月13日00:00:00 +0100 “但它实际上是”2012年2月13日星期一00:00:00 +0100 “ 你看?那么,我没有看到NSLogging期间的尾随空格。 [反讽:许多空间和返回后,字符串都不显示在这里!]

而不知何故,iOS 4并不关心它。 iOS5只是更挑剔,可能是正确的。 所以,我解决了这个事情如下:

NSString *trimmedString = [inputstring stringByTrimmingCharactersInSet: 
           [NSCharacterSet whitespaceAndNewlineCharacterSet]]; 

我希望这能帮助到你。

0

试试这个:

NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; 
[outputFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss Z"]; 
        
NSString *str = [outputFormatter stringFromDate:[NSDate date]]; 
/* 
    Do something with this string 
*/ 
[outputFormatter release]; 

你也可以通过添加加地区setLocale parameter to NSDateFormatter。

NSLocale *myLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_GB"]; 
NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; 
[outputFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss Z"]; 
[outputFormatter setLocale: myLocale]; 
        
NSString *str = [outputFormatter stringFromDate:[NSDate date]]; 

/* 
    Do something with this string 
*/ 

[outputFormatter release]; 
[myLocale release]; 
+0

感谢,不幸的是,它不能解决我的问题。在你的例子中,你使用[NSDate date]。有了这个值,它的工作正常。所以,显然,我必须检查我的inputFormatter。 – Sjakelien 2012-01-26 13:16:23