Rumah > pembangunan bahagian belakang > Golang > Pergi masa. Menghuraikan tarikh ISO tidak sah

Pergi masa. Menghuraikan tarikh ISO tidak sah

王林
Lepaskan: 2024-02-08 21:03:09
ke hadapan
552 orang telah melayarinya

Go time.Parse 无效的 ISO 日期

Kandungan soalan

Adakah terdapat cara untuk menggunakan time.Parse untuk menghuraikan rentetan tarikh berikut:

2023-06-06T07:04:58:278-07?

Saya cuba menggunakan format 2006-01-02T15:04:05:000Z07,但最后一个 : yang mengakibatkan ralat.

https://go.dev/play/p/y4T7meCX6D5


Jawapan betul


Tulis time.parse Balut fungsi untuk menerima titik perpuluhan, koma perpuluhan atau titik bertindih sebagai pemisah perpuluhan saat.

package main

import (
    "fmt"
    "strings"
    "time"
)

// accept a decimal point, decimal comma, or colon
// as the seconds decimal separator.
func timeparse(layout, value string) (time.time, error) {
    t, err := time.parse(layout, value)
    if err == nil {
        return t, err
    }
    if strings.count(value, ":") != 3 {
        return t, err
    }
    i := strings.lastindexbyte(value, ':')
    if i < 0 {
        return t, err
    }
    value2 := value[:i] + "." + value[i+1:]
    t2, err2 := time.parse(layout, value2)
    if err2 == nil {
        return t2, err2
    }
    return t, err
}

func main() {
    indate := "2023-06-06t07:04:58:278-07"
    parseformat := "2006-01-02t15:04:05z07"
    t, e := timeparse(parseformat, indate)
    if e != nil {
        fmt.println(e)
    }
    fmt.println(t)
}
Salin selepas log masuk

https://www.php.cn/link/a933075894d2fccffdaa2a492a4a12da

2023-06-06 07:04:58.278 -0700 -0700
Salin selepas log masuk

Atas ialah kandungan terperinci Pergi masa. Menghuraikan tarikh ISO tidak sah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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