我在日期解析方面遇到问题。它可以在我的设备和模拟器上运行,但不能在客户端设备上运行(这也是iPhone iOS 5.1.1,但可能是其他配置)
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
NSDate *date = nil;
NSError *error = nil;
[formatter setDateFormat:@"EEE, dd MMM y HH:mm:ss zzz"];
if (![formatter getObjectValue:&date forString:@"Mon, 21 Jun 2012 21:21:21 GMT" range:nil error:&error])
{
NSLog(@"%@", error);
}
哪个输出
Error Domain=NSCocoaErrorDomain Code=2048 "The operation couldn’t be completed. (Cocoa error 2048.)" UserInfo=0x446f10 {NSInvalidValue=Mon, 21 Jun 2012 21:21:21 GMT}
最佳答案
您需要将日期格式程序上的语言环境设置为en_US_POSIX
。
formatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
关于ios - NSDateFormatter在测试器设备上失败,并显示NSInvalidValue,但在我的设备上未失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11240643/