소개
이 랩은 Golang 에서의 시간 형식 지정 및 파싱에 중점을 둡니다. Golang 은 시간 형식 지정 및 파싱을 위한 패턴 기반 레이아웃을 제공합니다.
이 랩은 Golang 에서의 시간 형식 지정 및 파싱에 중점을 둡니다. Golang 은 시간 형식 지정 및 파싱을 위한 패턴 기반 레이아웃을 제공합니다.
문제는 제공된 레이아웃을 사용하여 Golang 에서 시간을 형식 지정하고 파싱하는 것입니다.
time 패키지를 사용하여 시간을 형식 지정하고 파싱합니다.time.RFC3339 레이아웃을 사용하여 시간을 형식 지정하고 파싱합니다.Mon Jan 2 15:04:05 MST 2006 참조 시간을 사용하여 주어진 시간/문자열을 형식 지정/파싱할 패턴을 보여줍니다.Parse 함수를 사용하여 시간을 파싱합니다.Format 함수를 사용하여 시간을 형식 지정합니다.fmt.Println 함수를 사용하여 형식 지정된 시간을 출력합니다.fmt.Printf 함수를 사용하여 추출된 구성 요소와 함께 형식 지정된 시간을 출력합니다.$ go run time-formatting-parsing.go
2014-04-15T18:00:15-07:00
2012-11-01 22:08:41 +0000 +0000
6:00PM
Tue Apr 15 18:00:15 2014
2014-04-15T18:00:15.161182-07:00
0000-01-01 20:41:00 +0000 UTC
2014-04-15T18:00:15-00:00
parsing time "8:41PM" as "Mon Jan _2 15:04:05 2006": ...
전체 코드는 다음과 같습니다.
// Go 는 패턴 기반 레이아웃을 통해 시간 형식 지정 및 파싱을 지원합니다.
package main
import (
"fmt"
"time"
)
func main() {
p := fmt.Println
// 다음은 RFC3339 에 따라 시간을 형식 지정하는 기본 예제입니다.
// 해당 레이아웃 상수 사용.
t := time.Now()
p(t.Format(time.RFC3339))
// 시간 파싱은 `Format` 과 동일한 레이아웃 값을 사용합니다.
t1, e := time.Parse(
time.RFC3339,
"2012-11-01T22:08:41+00:00")
p(t1)
// `Format` 및 `Parse` 는 예제 기반 레이아웃을 사용합니다. 일반적으로
// 이러한 레이아웃에 대해 `time` 의 상수를 사용하지만
// 사용자 지정 레이아웃을 제공할 수도 있습니다. 레이아웃은
// 참조 시간 `Mon Jan 2 15:04:05 MST 2006`을 사용하여
// 주어진 시간/문자열을 형식 지정/파싱할 패턴을 보여주어야 합니다.
// 예제 시간은 정확히 표시된 대로여야 합니다: 연도 2006,
// 시간 15, 요일 월요일 등.
p(t.Format("3:04PM"))
p(t.Format("Mon Jan _2 15:04:05 2006"))
p(t.Format("2006-01-02T15:04:05.999999-07:00"))
form := "3 04 PM"
t2, e := time.Parse(form, "8 41 PM")
p(t2)
// 순수하게 숫자 표현의 경우 추출된
// 시간 값의 구성 요소와 함께 표준 문자열 형식을 사용할 수도 있습니다.
fmt.Printf("%d-%02d-%02dT%02d:%02d:%02d-00:00\n",
t.Year(), t.Month(), t.Day(),
t.Hour(), t.Minute(), t.Second())
// `Parse` 는 잘못된 입력에 대해 오류를 반환합니다.
// 파싱 문제를 설명합니다.
ansic := "Mon Jan _2 15:04:05 2006"
_, e = time.Parse(ansic, "8:41PM")
p(e)
}
이 랩에서는 time 패키지를 사용하여 Golang 에서 시간을 형식 지정하고 파싱하는 방법을 배웠습니다. time.RFC3339 레이아웃을 사용하여 시간을 형식 지정하고 파싱했으며, Mon Jan 2 15:04:05 MST 2006 참조 시간을 사용하여 주어진 시간/문자열을 형식 지정/파싱할 패턴을 보여주었습니다. 또한 Parse 및 Format 함수를 사용하여 각각 시간을 파싱하고 형식 지정했습니다.