6
기기 시간대 추가로 현재 날짜를 가져 오려고했지만 원래 날짜보다 1 시간 늦었습니다. 나는 DaylightSavingTime 문제가 발생했습니다. isDaylightSavingTime = FALSE를 비활성화하는 방법. 여기 현재 NSDate를 시뮬레이터 날짜와 동일하게 만드는 방법 Date? iPhone Sdk
은 .. 내가 사용, 나는 1 시간 차이와 시간을 얻고있다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);
코드입니다, 날짜 perfact입니다.
매 순간마다 하나의 NSDate 만 존재합니다 (당신이 어디에 있든 상관 없습니다). 다른 시간대의 날짜를 인쇄하려면 NSDateFormatter를 사용하십시오. –
예,하지만 시간대 변경에 따라 자동 변경되는 일반 기능을 원합니다. isDaylightSavingTime = FALSE 일 때 문제가 있습니다. 그래서 isDaylightSavingTime = TRUE로 설정하고 싶지만 그렇게 할 수는 없다. – Sujal