Maison > Article > développement back-end > Comment puis-je obtenir la date de création d'un fichier sous Windows à l'aide de Go ?
Détermination de la date de création d'un fichier sous Windows à l'aide de Go
La détermination de la date de création d'un fichier sous Windows à l'aide de Go peut être obtenue en tirant parti du package OS et en ciblant les structures de données système spécifiques à Windows.
La fonction os.Stat donne accès aux métadonnées du fichier, mais elle n'inclut pas les date de création. Au lieu de cela, vous devez utiliser la méthode FileInfo.Sys() pour récupérer les structures de données sous-jacentes spécifiques au système, qui dans le cas de Windows est une structure syscall.Win32FileAttributeData.
La structure Win32FileAttributeData contient divers attributs, notamment le champ CreationTime. Ce champ représente l'horodatage de création du fichier sous forme de structure Filetime. Pour le convertir en une valeur temporelle lisible par l'homme, utilisez la fonction time.Unix avec un facteur de précision de la nanoseconde.
Voici un exemple d'extrait de code :
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) }
N'oubliez pas de protéger ce Windows- code spécifique utilisant des contraintes de build, soit dans un fichier _windows.go dédié, soit en utilisant la syntaxe //go:build windows.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!