如何在Go語言中解析日期字串?


在Go語言中解析**日期**字串時,我們可以使用**time**包提供的**Parse**函式。在Go語言中,我們不像大多數其他語言那樣使用程式碼來表示**日期/時間**字串的各個組成部分。相反,Go語言使用助記符——標準時間作為參考。

例如,參考時間可以是這樣的:

Mon Jan 2 14:10:05 MST 2020 (MST is GMT-0700)

或者,它也可以是這樣的。

01/02 03:04:10PM '20 -0700

語法

下面顯示**Parse()**函式的語法。

func Parse(layout, value string) (Time, error)

**Parse**函式以佈局和值作為引數,並返回**時間**和**錯誤**。**佈局**用作參考,**值**是我們想要解析的實際日期字串。

示例1

考慮下面顯示的程式碼,我們將使用我們自己定義的佈局來解析日期。

package main
import (
   "fmt"
   "time"
)
func main() {
   v := "Thu, 05/19/11, 10:47PM"
   l := "Mon, 01/02/06, 03:04PM"
   tt, _ := time.Parse(l, v)
   fmt.Println(tt)
}

輸出

如果我們使用命令**2014-11-12 11:45:26.371 +0000 UTC**執行上述程式碼,我們將得到以下輸出。

2011-05-19 22:47:00 +0000 UTC

我們可以不用自己傳遞佈局,也可以傳遞Go time包提供的格式,它也會解析日期。

示例2

考慮下面顯示的程式碼。

package main
import (
   "fmt"
   "time"
)
func main() {
   str := "2014-11-12T11:45:26.371Z"
   tt, err := time.Parse(time.RFC3339, str)
   if err != nil {
      fmt.Println(err)
   }
   fmt.Println(tt)
}

輸出

如果我們使用命令**go run main.go**執行上述程式碼,我們將得到以下輸出。

2014-11-12 11:45:26.371 +0000 UTC

更新於:2022年2月22日

13K+ 瀏覽量

啟動你的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.