Go 언어 epoch 알아보기

오늘은 Go 언어에서 지원하는 epoch를 간단한 코드로 출력해보려 합니다.

epoch란, 유닉스 시간이라고 불리며 utc부터 초로 환산되어 정수로 출력한 것입니다.

package main

import (
	"fmt"
	"time"
)

시간을 다루기 위한 time 패키지와 문자열을 출력하기 위한 fmt 패키지를 가져옵니다.

func main() {
	timeNow := time.Now()
	fmt.Println(timeNow)

일단 현재 시간을 출력해보자면 time.Now()를 사용하면 됩니다.

로컬 타임으로 출력됩니다.

	sec := timeNow.Unix()
	fmt.Println(sec)

초 단위의 유닉스 시간을 출력할 수 있습니다.

    nano := timeNow.UnixNano()
	fmt.Println(nano)

나노 단위의 유닉스 시간을 출력할 수 있습니다.

    milli := nano / 1000000
    fmt.Println(milli)

밀리초 단위의 유닉스 시간을 출력할 수 있습니다.

    fmt.Println(time.Unix(sec, 0))
    fmt.Println(time.Unix(0, nano))
}

Unix epoch 초 단위 혹은 나노 단위로 반환했던 것을 다시 해당 시간으로 변환할 수 있습니다.

Written on November 21, 2018