首頁 > 後端開發 > Golang > 如何在 Go 中解析像 Tar 輸出這樣的非標準時間戳記?

如何在 Go 中解析像 Tar 輸出這樣的非標準時間戳記?

Susan Sarandon
發布: 2024-12-19 13:26:32
原創
704 人瀏覽過

How to Parse Non-Standard Timestamps like Tar's Output in Go?

Go 中的日期解析

Go 中解析時間戳可能是一個挑戰,特別是在使用非標準格式時。其中一個場景涉及解析 tar 產生的時間戳,例如「2011-01-19 22:15」。

使用 time.Parse 函數解析此時間戳記的初始嘗試失敗,並顯示錯誤訊息「解析時間」 “2011-01-19 22:15”:月份超出範圍。 「此錯誤源自於以下事實:time.Parse 使用的預設時間格式需要與tar 時間戳記不同的標準格式。

要解決此問題,請查閱Go time 套件文件以取得有關定義自訂日期的說明格式。 2006」。要建立自訂格式,只需將標準格式的元素對應到所需格式的對應元素即可。

例如,要解析 tar 時間戳記「2011-01-19 22:15”,請使用以下程式碼:

import (
    "fmt"
    "time"
)

func main() {
    t, err := time.Parse("2006-01-02 15:04", "2011-01-19 22:15")
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Println(time.SecondsToUTC(t.Seconds()))
}
登入後複製

輸出:

Wed Jan 19 22:15:00 UTC 2011
登入後複製

使用此自訂格式,time.Parse 函數將正確解析tar 時間戳記並傳回UTC 格式的等效time.Time 物件。

以上是如何在 Go 中解析像 Tar 輸出這樣的非標準時間戳記?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板