我以這種格式獲取某些日期「04/11/13 19:37:00」我想將此日期轉換爲本地時區,下面是我正在使用的代碼。打印時更改日期格式描述
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"MM/dd/yy HH:mm:ss";
NSTimeZone *gmt = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
[dateFormatter setTimeZone:gmt];
NSDate *date = [dateFormatter dateFromString:dateString];
NSLog(@"date value %@",date);
我面臨是我使用調試器時我把鼠標在「日期」變量它顯示「2013年4月12日1時07分00秒IST」這是正確的出了問題把我需要的。但是當我使用NSLog打印相同的「日期」變量時,我得到「2013-04-11 19:37:00 +0000」。我怎樣才能得到正確的格式可以解釋任何一個,我是否需要更改dateformat。
形成dateString的NSDate的描述將始終處於UTC 。你可以看到IST時區是UTC之前的5.30小時,所以你的日期是正確的。 – Anupdas
如何將「2013-04-11 19:37:00 +0000」轉換爲當地時區「2013-04-12 01:07:00 IST」like this – kiri
我假設你所得到的時間是GMT然後您想要將UTC轉換爲本地時區。如果是這種情況,您可以在dateFormatter中將時區設置爲本地。 – Anupdas