2012-03-14 237 views
0

我想改變目標c中日期的格式。我有以下格式的NSDate ..如何更改NSDate格式

2012.03.14 AD at 03:22:13 PDT 

此代碼工作正常。

NSDateFormatter* df_utc = [[[NSDateFormatter alloc] init] autorelease]; 
[df_utc setTimeZone:[NSTimeZone timeZoneWithName:@"PST"]]; 
[df_utc setDateFormat:@"yyyy.MM.dd G 'at' HH:mm:ss zzz"]; 

我要轉換爲

03/14/2012 5:12:38 IST這種格式..我想是這樣的

NSDateFormatter* df_utc = [[[NSDateFormatter alloc] init] autorelease]; 
[df_utc setTimeZone:[NSTimeZone timeZoneWithName:@"PST"]]; 
[df_utc setDateFormat:@"MM/dd/yyyy h:mm:ss z"]; 
[df_utc stringFromDate:[NSDate date]]; 

但它的返回值NULL,任何人都幫我找出。
在此先感謝

+1

什麼是不工作?你可以調用'[df_utc stringFromDate:[NSDate date]]' – MrTJ 2012-03-14 14:07:08

+0

hi @MrTJ,我編輯了我的問題。 – 2012-03-14 14:30:11

+0

我們可以看到更多的這段代碼是在哪裏?我假定你將返回的字符串存儲在一個變量中。 – 2012-03-14 14:36:42

回答

2

因此在您的實際代碼中,您可能不使用[NSDate date]來創建日期,但另一個數據?當你把它放入格式化器時,你有沒有檢查過,你的日期不是nil?如果你的格式化程序只與[NSDate date]一起工作,你有沒有試過?您的zone變量也可能是問題。它填寫正確嗎?

這是你的實際代碼?如果不是,請告訴我們。你可以使用debuger,一行一行地檢查,如果一些變量是nil或者不是你想要的值。

+0

我編輯我的問題 – 2012-03-14 15:29:40

+0

我的第一個雖然是該區域也是無效的,如果這甚至不適用於[NSDate日期]。 – lnafziger 2012-03-14 15:31:23