Swift(스위프트): DateFormatter로 시간대 약어(Timezone abbreviation) 표시

 

TimeZone.current.identifierTimeZone.abbreviationDictionary를 사용하면 시간대 약어를 표시할 수 있습니다.

func dateString(timestamp: Int) -> String {
    let date = Date(timeIntervalSince1970: TimeInterval(timestamp))
    let formatter = DateFormatter()
    formatter.timeZone = .autoupdatingCurrent
    formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
    let timezoneAbbr = TimeZone.abbreviationDictionary.first { $1 == formatter.timeZone.identifier }

    // timezoneAbbr?.value는 Asia/Seoul, timezoneAbbr?.key는 KST로 표시
    // .value는 timeZone.identifier와 동일
    return formatter.string(from: date) + " (\(timezoneAbbr?.value ?? "Unknown"))"
}

 

1655192817
2022-06-14 16:46:57 (KST)
2022-06-14 16:46:57 (Asia/Seoul)

 

출처
참고

문의 | 코멘트 또는 yoonbumtae@gmail.com


카테고리: Swift


0개의 댓글

답글 남기기

Avatar placeholder

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다