Rumah > pembangunan bahagian belakang > Golang > Bagaimana Menghuraikan Cap Masa Seperti Tar dengan betul dalam Fungsi `time.Parse` Go?

Bagaimana Menghuraikan Cap Masa Seperti Tar dengan betul dalam Fungsi `time.Parse` Go?

DDD
Lepaskan: 2024-12-09 07:32:06
asal
738 orang telah melayarinya

How to Correctly Parse Tar-like Timestamps in Go's `time.Parse` Function?

Penghuraian Tarikh dalam Go

Menghuraikan cap masa dalam Go boleh menjadi tugas yang sukar dengan API masa yang rumit.Parse. Mari kita mendalami isu biasa yang dihadapi apabila cuba menghuraikan cap masa yang serupa dengan yang dihasilkan oleh tar, seperti '2011-01-19 22:15'.

Isu Penghuraian

Coretan kod berikut gagal dengan ralat "masa menghurai "2011-01-19 22:15": bulan di luar julat":

package main

import (
    "fmt"
    "time"
)

func main() {
    var time, error = time.Parse("2011-01-19 22:15", "2011-01-19 22:15")
    if error != nil {
        fmt.Println(error.String())
        return
    }
    fmt.Println(time)
}
Salin selepas log masuk

Memahami Ralat

Mesej ralat menunjukkan bahawa rentetan format yang diberikan kepada masa. Parse sedang menunggu nilai bulan adalah antara 1 dan 12, manakala cap waktu yang disediakan mengandungi Januari (diwakili oleh 01), yang merupakan yang pertama bulan.

Mengatasi Isu

Untuk menyelesaikan isu ini, kami perlu menyesuaikan rentetan format untuk mentafsir cap waktu dengan betul. Merujuk kepada dokumentasi pakej masa Pergi, kami mendapati arahan berikut:

"Masa standard yang digunakan dalam reka letak ialah:

Isnin 2 Jan 15:04:05 MST 2006 (MST ialah GMT-0700)

Untuk menentukan format anda sendiri, tuliskan rupa masa standard yang diformatkan cara."

Mengubah suai rentetan format dengan sewajarnya, kami mempunyai:

package main

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(t)
}
Salin selepas log masuk

Kod ini akan mengeluarkan: "2011-01-19 22:15:00 0000 UTC".

Dengan mengikut garis panduan yang disediakan dalam dokumentasi, kami dapat menyesuaikan rentetan format untuk berjaya menghuraikan cap masa dalam format yang dikehendaki.

Atas ialah kandungan terperinci Bagaimana Menghuraikan Cap Masa Seperti Tar dengan betul dalam Fungsi `time.Parse` Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan