2012-08-26 42 views
9

在我的應用程序中,我使用的是Facebook Graph API,當我提取用戶詳細信息時,我將用戶的生日作爲格式爲MM/DD/YYYY的字符串獲取。將字符串MM/DD/YYYY轉換爲NSDate

我的問題是,如何將字符串「MM/DD/YYYY」轉換爲NSDate

我嘗試做

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"MM/DD/YYYY"]; 
NSDate *date = [dateFormatter dateFromString:@"08/08/2012"]; 
[dateFormatter release]; 

,但我得到了錯誤的日期

回答

14

使用NSDateFormatter您可以直接從NSString轉換爲NSDate。這裏有一個例子:

NSDateFormatter* myFormatter = [[NSDateFormatter alloc] init]; 
[myFormatter setDateFormat:@"MM/dd/yyyy"]; 
NSDate* myDate = [myFormatter dateFromString:@"8/26/2012"]; 
NSLog(@"%@", myDate); 

對日期格式的模式詳見Unicode.org

1

整整這種情況下NSDateFormatterexist

+0

這是不是一個真正的答案,作爲參考NSDateFormatter原來的問題。 –

+3

這不是我給出這個答案的時候。它後編輯。 – Matthias

+0

@Matthias我在編輯之前閱讀了這個問題..哈哈哈對於這個問題有什麼不同的看法:D根據這個問題,你的回答是完全正確的,所以+1對我來說就是你。 –

3

你做得很好。你的問題只是格式字符串。

  • 首都M是月。
  • d是一天。
  • y是年份。

只要一貫使用這些符號,你應該沒問題。

5

添加[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]]

+0

謝謝,你救了我一些時間!!!!! – StuartM

+0

謝謝你,正是我想念的東西:) – sachadso