Go 언어에서 time.Now() 등으로 만드는 시간은 보통 UTC 값이어서 출력시 한국 시간으로 변환할 필요가 있다. 이를 위해서는 시간값(Time 형식)에 지역 정보(loc)를 지정해 줘야 한다. 기본값은 nil 이므로 UTC 를 따라가게 된다. time.LoadLocation() 을 활용해 지역 정보를 얻어 지정해주면 출력시 지역 시간 정보를 출력한다.
package main
import (
"fmt"
"time"
)
func main() {
loc, err := time.LoadLocation("Asia/Seoul")
if err != nil {
panic(err)
}
now := time.Now() // Go Playground 에서는 항상 시각은 2009-11-10 23:00:00 +0000 UTC 에서 시작한다.
t := now.In(loc)
fmt.Println("now=", now)
fmt.Println("kst=", t)
}
now= 2009-11-10 23:00:00 +0000 UTC m=+0.000000001
kst= 2009-11-11 08:00:00 +0900 KST
결과를 보면 표준시에 +9시간을 추가한 서울시 시간을 확인할 수 있습니다.
The Go Playground 에서 보기 : https://play.golang.org/p/r3PvVzYjJ9U
답글 남기기
댓글을 달기 위해서는 로그인해야합니다.