2012-12-26 33 views
0

我收到日期2012年12月24日08:59:00 +0000,我想它作爲2012-12-20T16:00:00.000Z 我嘗試使用此代碼日期格式2012-12-20T16:00:00.000Z?

NSDateComponents *dayComponent = [[NSDateComponents alloc] init] ; 
    NSDate* now = [NSDate date]; 
    NSCalendar *theCalendar = [NSCalendar currentCalendar]; 
NSDateFormatter* formatter = [NSDateFormatter alloc]; 
    [formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"]; 
    [formatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]]; 
dayComponent.day = -2; 
     NSDate* fromDate = [theCalendar dateByAddingComponents:dayComponent toDate:now options:0]; 
     fromDateStr = [formatter stringFromDate:fromDate]; 

我的要求就是在指定格式中獲得前2天的日期,如2天前,14天前等。 但我得到fromDateStr作爲空字符串。 任何建議,將不勝感激。

+0

當你用上面的代碼試過,你得到了什麼輸出? –

+0

「你的日期」是什麼意思?你說你正在「取得日期......」 - 你是什麼意思? –

+0

@Prateek空字符串,即來自DatrStr的空字符串。 – Blios

回答

8

爲2012-12-20T16日期格式:00:00.000Z是 YYYY-MM-dd'T'HH:MM:ss.SSS'Z」原

希望有所幫助。

讓我知道如果這不會給你想要的結果。

這裏是爲我工作的一個示例代碼:

NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
    [formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"]; 
    NSString *str = [formatter stringFromDate:[NSDate date]]; 
    NSLog(@"Date = %@",str); 

產量爲:

Date = 2012-12-26T14:55:36.702Z 
+0

對不起,它沒有幫助我,因爲我得到相同的結果,即空字符串。 – Blios

+0

我不知道爲什麼它不適合你。檢查我編輯的答案。 –

+0

我明白了,我身邊的愚蠢錯誤忘了初始化formatter.Now它的工作..謝謝! – Blios

相關問題