Go 에서 time format 하는 방법
The layouts use the reference time on Mon Jan 2 15:04:05 MST 2006 to indicate
the pattern under which to format the time object.
layout 의 형태가 정해져있다.
2006-01-02 15:04:05
이 형태를 알아두고 time format 하면 된다.
처음에 Go time format 이 layout 에 대해 잘 이해되지 않았는데 한번 해보면 다음부터는 헷갈리지 않고 바로 사용 할 수 있다.
package main
import (
"fmt"
"time"
)
func main() {
t := time.Now()
fmt.Println(t)
fmt.Println(t.Format("2006-01-02 15:04:05"))
}
2022-07-20 22:27:03.411994 +0900 KST m=+0.000154999
2022-07-20 22:27:03
layout 이 정해져있고 원하는 형태로 만들어 주면 되는 것이다.
func main() {
t := time.Now()
fmt.Println(t.Format("15:04:05 01-02-2006"))
}
22:28:31 07-20-2022
layout 을 시간이 앞으로 년도가 제일 뒤로 해서 print 한 time format
한번 알아두면 Go 에서 time format 에 대해 시간 낭비가 사라질 것이다.
참고로 Go 에서 제공하는 layout
Use a format constants
Go provides in the time package some handy constants for commonly used formats:
const (
ANSIC = "Mon Jan _2 15:04:05 2006"
UnixDate = "Mon Jan _2 15:04:05 MST 2006"
RubyDate = "Mon Jan 02 15:04:05 -0700 2006"
RFC822 = "02 Jan 06 15:04 MST"
RFC822Z = "02 Jan 06 15:04 -0700" // RFC822 with numeric zone
RFC850 = "Monday, 02-Jan-06 15:04:05 MST"
RFC1123 = "Mon, 02 Jan 2006 15:04:05 MST"
RFC1123Z = "Mon, 02 Jan 2006 15:04:05 -0700" // RFC1123 with numeric zone
RFC3339 = "2006-01-02T15:04:05Z07:00"
RFC3339Nano = "2006-01-02T15:04:05.999999999Z07:00"
Kitchen = "3:04PM"
// Handy time stamps.
Stamp = "Jan _2 15:04:05"
StampMilli = "Jan _2 15:04:05.000"
StampMicro = "Jan _2 15:04:05.000000"
StampNano = "Jan _2 15:04:05.000000000"
)
몇가지 예를 들어보면
func main() {
t := time.Now()
fmt.Println(t.Format(time.ANSIC))
fmt.Println(t.Format(time.UnixDate))
fmt.Println(t.Format(time.Stamp))
}
Wed Jul 20 22:32:58 2022
Wed Jul 20 22:32:58 KST 2022
Jul 20 22:32:58
Time format 은 정말 많이 사용하니까 알아두자!
'Language > Go' 카테고리의 다른 글
[Go] timestamp Asia/Seoul (0) | 2022.09.11 |
---|---|
[Go] Gin vs Echo vs Fiber Framework (0) | 2022.08.21 |
[Go] Covert Time Unix to UTC (1) | 2022.07.20 |
[Go] env file ( godotenv ) (0) | 2022.07.06 |
[Go] net Dial, DialTimeout (check tcp port open) (0) | 2022.07.04 |