6
我想獲得當前的日期與添加設備時區,但顯示原始日期晚了1小時。我的事情,我遇到了DaylightSavingTime的問題。 如何禁用isDaylightSavingTime = FALSE。如何獲取當前NSDate相同的模擬器日期? iPhone的Sdk
這裏是代碼,我用..
NSDate *date = [NSDate Date];
NSTimeZone *currentTimeZon = [NSTimeZone localTimeZone];
if ([currentTimeZon isDaylightSavingTime])
{
NSLog(@"East coast is NOT on DT");
}
else
{
NSLog(@"East coast is on DT");
}
NSTimeInterval timeZoneOffset = [currentTimeZon secondsFromGMTForDate:currentDate];
NSTimeInterval gmtTimeInterval = [date timeIntervalSinceReferenceDate] - timeZoneOffset;
NSDate *gmtDate = [NSDate dateWithTimeIntervalSinceReferenceDate:gmtTimeInterval];
NSLog(@"### Announcement gmtDate = %@",gmtDate);
我得到的時間爲1小時的時差,日期是perfact。
每個時刻只有一個NSDate(不管你在哪裏)。如果您想在不同的時區打印日期,請使用NSDateFormatter。 – 2011-08-17 11:58:41