>백엔드 개발 >Golang >특정 시간대 오프셋을 사용하여 time.Time 객체를 만드는 방법은 무엇입니까?

특정 시간대 오프셋을 사용하여 time.Time 객체를 만드는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-12-13 16:35:17576검색

How to Create a time.Time Object with a Specific Timezone Offset?

시간대 오프셋을 사용하여 시간 개체 생성

특정 시간대 오프셋을 포함하는 time.Time 개체를 어떻게 생성합니까? "[07/Mar/2004:16:47:46 -0800]" 형식의 타임스탬프가 있는 Apache 로그가 있다고 가정합니다. 이를 구성 요소로 구문 분석한 후 "-0800" 시간대 오프셋을 통합하는 time.Time 개체를 생성하려고 합니다.

이 문제를 해결하려면 time.FixedZone()을 사용하여 사용자 정의 time.Location을 생성합니다. 원하는 오프셋. 예:

loc := time.FixedZone("myzone", -8*3600)
nativeDate := time.Date(2019, 2, 6, 0, 0, 0, 0, loc)

여기에서 "myzone"은 사용자 정의 위치에 지정된 임의의 이름이고 "-8*3600"은 UTC와의 시차(초)를 나타냅니다.

또는 , 시간대 오프셋이 문자열로 있는 경우 맞춤형 레이아웃으로 time.Parse()를 사용하세요. 문자열:

t, err := time.Parse("-0700", "-0800")
if err != nil {
    panic(err)
}

nativeDate := time.Date(2019, 2, 6, 0, 0, 0, 0, t.Location())

이 접근 방식은 문자열을 사용하여 오프셋을 설정하여 결과 time.Time 개체가 원하는 시간대를 반영하도록 합니다.

위 내용은 특정 시간대 오프셋을 사용하여 time.Time 객체를 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.