我想從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