Heim >Backend-Entwicklung >Golang >golang time.Parse-Fehler Stunde außerhalb des Bereichs, gleiches Format

golang time.Parse-Fehler Stunde außerhalb des Bereichs, gleiches Format

WBOY
WBOYnach vorne
2024-02-06 09:20:071113Durchsuche

golang time.Parse错误小时超出范围相同格式

Frageninhalt

Ich habe eine Zeitzeichenfolge im folgenden Format: 31 July 2023 21:06:36. Ich möchte Zeit sparen, indem ich das Parsen verwende. Also habe ich das gemacht

    dateStr := "20 July 2023 21:06:36"
    formatLayout := "31 July 2023 21:06:36"
    parsedTime, err := time.Parse(formatLayout, dateStr)
    if err != nil {
        return detail, err
    }

Aber es ist ein Fehler aufgetreten parsing time "31 July 2023 21:06:36": hour out of range。然后我将格式布局更改为 02 January 2006 15:04:05

    dateStr := "20 July 2023 21:06:36"
    formatLayout := "02 January 2006 15:04:05"
    parsedTime, err := time.Parse(formatLayout, dateStr)
    if err != nil {
        return detail, err
    }

Es erzeugt die richtige Zeit. Meine Frage ist, warum es einen Fehler erzeugt, wenn ich 02 一月 2006 15:04:05 的布局它不会产生错误,但 31 七月 2023 21:06:36 verwende. Sie haben doch das gleiche Format, oder?

Danke


Richtige Antwort


Mon Jan 2 15:04:05 MST 2006(或 01/02 03:04:05PM '06 -0700)是 Layout 包中定义的 time konstant.

Dies ist definiert, weil jeder Teil der Zeit (Tag, Monat, Jahr, Stunde, Minute, Sekunde, Zeitzone) unterschiedlich ist, sodass es bequem als Layout verwendet werden kann, da es keine mehrdeutigen Felder enthält. Zum Beispiel. Der Monat ist immer 1, der Tag ist immer 2 und so weiter.

Sie können sehen, dass dies die „besondere“ Zeit ist, die das time-Paket zum Durchführen der Analyse verwendet. Nichts mehr.

Siehe auch Ursprung von „Mon Jan 2 15:04:05 MST 2006“, golang.

Das obige ist der detaillierte Inhalt vongolang time.Parse-Fehler Stunde außerhalb des Bereichs, gleiches Format. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:stackoverflow.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen