Heim >Backend-Entwicklung >Golang >Wie konvertiere ich den UnixNano-Zeitstempel von Go in Millisekunden?

Wie konvertiere ich den UnixNano-Zeitstempel von Go in Millisekunden?

Susan Sarandon
Susan SarandonOriginal
2024-12-09 21:22:17196Durchsuche

How to Convert Go's UnixNano Timestamp to Milliseconds?

Konvertieren von Go's UnixNano in Millisekunden

In Go liefert die Funktion time.Now().UnixNano() einen Zeitstempel mit Nanosekundengenauigkeit. Um den Zeitstempel in Millisekunden zu erhalten, können Sie die erforderliche Konvertierung durchführen.

Für Go v1.17 und höher:

Ab Go v1.17 das Zeitpaket enthält die Funktionen UnixMicro() und UnixMilli(), was die Konvertierung unkompliziert macht:

timestamp := time.Now().UnixMilli()

Für Go v1.16 und früher:

Vor Go v1.17 können Sie den Nanosekunden-Zeitstempel durch Division in Millisekunden umwandeln:

func makeTimestamp() int64 {
    return time.Now().UnixNano() / 1e6
}

Hier stellt 1e6 die Anzahl der Nanosekunden dar in einer Millisekunde.

Unten finden Sie ein Beispielprogramm, das dies demonstriert Konvertierung:

package main

import (
    "fmt"
    "time"
)

func main() {
    timestamp := makeTimestamp()

    fmt.Printf("%d \n", timestamp)
}

func makeTimestamp() int64 {
    return time.Now().UnixNano() / 1e6
}

Das obige ist der detaillierte Inhalt vonWie konvertiere ich den UnixNano-Zeitstempel von Go in Millisekunden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn