> 백엔드 개발 > Golang > golang 날짜 유형 변환

golang 날짜 유형 변환

WBOY
풀어 주다: 2023-05-10 10:02:36
원래의
1746명이 탐색했습니다.

Golang은 효율성과 단순성으로 널리 알려진 매우 인기 있는 프로그래밍 언어입니다. 애플리케이션을 개발하다 보면 날짜 유형을 변환해야 하는 경우가 종종 있습니다. Golang에서 날짜 유형을 변환하는 방법을 소개하겠습니다.

Golang에는 time.Time과 string이라는 두 가지 주요 날짜 유형이 있습니다. time.Time 유형은 특정 시점을 나타낼 수 있는 반면, 문자열 유형은 문자열 유형 표현입니다. 두 유형 사이를 변환하려면 Golang에서 제공하는 일부 기능을 사용할 수 있습니다.

  1. string to time.Time

Golang에서는 time.Parse() 함수를 통해 문자열 형식의 날짜를 time.Time 형식으로 변환할 수 있습니다. 예는 다음과 같습니다.

str := "2021-06-01 12:00:00"
layout := "2006-01-02 15:04:05"
t, err := time.Parse(layout, str)
if err != nil {
    fmt.Println(err)
}
fmt.Println(t)
로그인 후 복사

구문 분석 함수 time.Parse()는 두 개의 매개변수를 전달해야 합니다. 하나는 날짜 문자열이고 다른 하나는 날짜 문자열의 형식입니다. 위의 예에서 날짜 문자열은 2021-06-01 12:00:00이고 형식 문자열은 2006-01-02 15:04:05입니다. 여기서 주의할 점은 형식 문자열의 숫자를 연, 월, 일, 시, 분, 초의 순서로 배열하고, 해당 형식 문자를 사용해야 한다는 점이다. 2021-06-01 12:00:00,格式字符串是2006-01-02 15:04:05。这里需要注意的是,格式字符串中的数字必须按照年、月、日、时、分、秒的顺序排列,并使用对应的格式符。

  1. time.Time转string

在Golang中,可以通过time.Format()函数将一个time.Time类型的日期转换为string类型。示例如下:

t := time.Now()
layout := "2006-01-02 15:04:05"
str := t.Format(layout)
fmt.Println(str)
로그인 후 복사

格式化函数time.Format()需要传递一个格式字符串,该格式字符串与解析函数中的字符串格式相同。在上面的示例中,获取当前时间使用的是time.Now()函数,格式字符串是2006-01-02 15:04:05

  1. Unix时间戳转time.Time

在Golang中,可以通过time.Unix()函数将一个Unix时间戳转换为time.Time类型。示例如下:

unixTime := int64(1622496000)
t := time.Unix(unixTime, 0)
fmt.Println(t)
로그인 후 복사

函数time.Unix()需要传递两个参数:一个是Unix时间戳,另一个是纳秒的偏移量,这里使用0作为偏移量即可。

  1. time.Time转Unix时间戳

在Golang中,可以通过time.Unix()函数将一个time.Time类型转换为Unix时间戳。示例如下:

t := time.Now()
unixTime := t.Unix()
fmt.Println(unixTime)
로그인 후 복사

函数time.Unix()会返回一个Unix时间戳,并且该时间戳是int64类型的。在上面的示例中,获取当前时间使用的是time.Now()

    time.Time을 문자열로

    Golang에서는 time.Format() 함수를 통해 time.Time 형식의 날짜를 문자열 형식으로 변환할 수 있습니다. 예는 다음과 같습니다.

    rrreee🎜형식 지정 함수 time.Format()은 구문 분석 함수의 문자열 형식과 동일한 형식 문자열을 전달해야 합니다. 위의 예에서 time.Now() 함수는 현재 시간을 가져오는 데 사용되며 형식 문자열은 2006-01-02 15:04:05입니다. 🎜
      🎜Unix 타임스탬프를 time.Time으로🎜🎜🎜Golang에서는 time.Unix() 함수를 통해 Unix 타임스탬프를 time.Time 유형으로 변환할 수 있습니다. 예는 다음과 같습니다. 🎜rrreee🎜 time.Unix() 함수는 두 개의 매개변수를 전달해야 합니다. 하나는 Unix 타임스탬프이고 다른 하나는 나노초 오프셋입니다. 여기서는 0이 오프셋으로 사용됩니다. 🎜
        🎜time.Time을 Unix 타임스탬프로🎜🎜🎜Golang에서는 time.Unix() 함수를 통해 time.Time 유형을 Unix 타임스탬프로 변환할 수 있습니다. 예는 다음과 같습니다: 🎜rrreee🎜 time.Unix() 함수는 Unix 타임스탬프를 반환하며 타임스탬프는 int64 유형입니다. 위의 예에서는 time.Now() 함수를 사용하여 현재 시간을 가져옵니다. 🎜🎜요약🎜🎜Golang 날짜 유형 변환은 어렵지 않습니다. 적절한 기능을 사용하면 됩니다. 위에 소개된 네 가지 방법은 대부분의 날짜 유형 변환 요구 사항을 충족할 수 있습니다. 물론 실제 적용에서 고려해야 할 특별한 경우가 많고 특정 상황에 따라 조정해야 하지만 이것만으로도 시작하기에 충분합니다. 🎜

위 내용은 golang 날짜 유형 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿