programing

목표-C에서 NSDate를 현재 UTC로 설정

powerit 2023. 10. 30. 21:19
반응형

목표-C에서 NSDate를 현재 UTC로 설정

시작하기 쉬운 방법이 있습니까?NSDate현재 UTC 날짜/시간으로?

[NSDate date];

다음과 같은 작업을 수행하는 범주를 만들 수 있습니다.

-(NSString *)getUTCFormateDate:(NSDate *)localDate
{
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"UTC"];
    [dateFormatter setTimeZone:timeZone];
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    NSString *dateString = [dateFormatter stringFromDate:localDate];
    [dateFormatter release];
    return dateString;
}

NSDate는 절대 기준 날짜인 2001년 1월 1일 00:00 GMT부터의 간격을 나타냅니다. 따라서 클래스 메서드 [NSDate date]는 해당 간격을 반환합니다.UTC에서 해당 데이터를 텍스트 형식으로 표시하려면 적절한 NSTimeZone(UTC)과 함께 NSDateFormatter를 사용하여 필요에 따라 렌더링하면 됩니다.

NSDate 개체는 특정 캘린더 시스템이나 시간대와 관계없이 단일 시점을 캡슐화합니다.날짜 개체는 절대 기준 날짜(2001년 1월 1일 00:00:00 UTC)에 대한 불변의 시간 간격을 나타냅니다.

스위프트 버전:

extension NSDate {
    func getUTCFormateDate() -> String {
        let dateFormatter = NSDateFormatter()
        let timeZone = NSTimeZone(name: "UTC")
        dateFormatter.timeZone = timeZone
        dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
        return dateFormatter.stringFromDate(self)
    }
}

언급URL : https://stackoverflow.com/questions/2615833/objective-c-setting-nsdate-to-current-utc

반응형