我想从Twitter API结果转换为NSDate对象使用NSDateFormatter字符串。我发现的是,NSDateFormatter只是返回我的机器的当前日期/时间。任何帮助将不胜感激!NSDateFormatter - 从Twitter解析日期JSON API
这里的字符串的样子进入我的功能:
周六,2010年12月11日1时35分52秒+0000
而这里的功能:
+(NSDate*)convertTwitterDateToNSDate:(NSString*)created_at
{
// Sat, 11 Dec 2010 01:35:52 +0000
static NSDateFormatter* df = nil;
df = [[NSDateFormatter alloc] init];
[df setTimeStyle:NSDateFormatterFullStyle];
[df setFormatterBehavior:NSDateFormatterBehavior10_4];
[df setDateFormat:@"EEE, d LLL yyyy HH:mm:ss Z"];
NSDate* convertedDate = [df dateFromString:created_at];
[df release];
return convertedDate;
}
这里是返回的日期:
2010-12-10 17:58:26 -0800
这恰好是我现在计算机的日期和时间。
* 注意! *在分配DateFormater时将使用autorelease的内存管理更改为函数中的显式版本。当在一个巨大的循环中调用这个函数时,我发现它在autorelease时开始失败(我猜测汽车部分没有足够快地释放),但是改变它以解决问题。
你也可以说调用这个方法,你是如何显示结果的代码? – Anna 2010-12-11 03:57:29
您的代码适用于我。我会检查你处理返回值的位置。 (虽然你的代码每次运行时都会泄漏一个NSDateFormatter) – 2010-12-11 07:08:21
谢谢史蒂夫,内存泄漏固定! – 2010-12-11 19:40:08