Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann ich mit Go das Erstellungsdatum einer Datei in Windows abrufen?

Wie kann ich mit Go das Erstellungsdatum einer Datei in Windows abrufen?

Barbara Streisand
Barbara StreisandOriginal
2024-11-20 18:54:14105Durchsuche

How Can I Get a File's Creation Date in Windows Using Go?

Bestimmen des Erstellungsdatums einer Datei in Windows mit Go

Das Bestimmen des Erstellungsdatums einer Datei in Windows mit Go kann mithilfe des Betriebssystempakets erfolgen und indem es auf die Windows-spezifischen Systemdatenstrukturen abzielt.

Die os.Stat-Funktion bietet Zugriff auf die Metadaten der Datei, tut dies aber auch nicht das Erstellungsdatum enthalten. Stattdessen müssen Sie die FileInfo.Sys()-Methode verwenden, um die zugrunde liegenden systemspezifischen Datenstrukturen abzurufen, bei denen es sich im Fall von Windows um eine syscall.Win32FileAttributeData-Struktur handelt.

Die Win32FileAttributeData-Struktur enthält verschiedene Attribute, darunter das CreationTime-Feld. Dieses Feld stellt den Erstellungszeitstempel der Datei als Filetime-Struktur dar. Um es in einen für Menschen lesbaren Zeitwert umzuwandeln, verwenden Sie die time.Unix-Funktion mit einem Nanosekunden-Präzisionsfaktor.

Hier ist ein Beispiel-Codeausschnitt:

package main

import (
    "fmt"
    "os"
    "syscall"
    "time"
)

func main() {
    fi, err := os.Stat("test.txt")
    if err != nil {
        panic(err)
    }

    // Ensure platform is Windows.
    if os.Name != "windows" {
        panic("This example is only valid for Windows.")
    }

    d := fi.Sys().(*syscall.Win32FileAttributeData)
    cTime := time.Unix(0, d.CreationTime.Nanoseconds())

    fmt.Println("File creation date:", cTime)
}

Denken Sie daran, dieses Windows- zu schützen. Spezifischer Code mithilfe von Build-Einschränkungen, entweder innerhalb einer dedizierten _windows.go-Datei oder mithilfe der Windows-Syntax //go:build.

Das obige ist der detaillierte Inhalt vonWie kann ich mit Go das Erstellungsdatum einer Datei in Windows abrufen?. 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