Mengakses Tarikh Penciptaan Fail dalam Windows dengan Go
Soalan:
Mencari metadata fail, seperti tarikh penciptaan, boleh berguna untuk pelbagai senario. Dalam Windows, bagaimanakah kita boleh mengakses maklumat penciptaan fail dengan cekap menggunakan perpustakaan standard Go?
Jawapan:
Pustaka standard Go menyediakan antara muka untuk menyelidiki atribut fail khusus sistem. Walau bagaimanapun, fungsi os.Stat() dan os.Chtimes() yang biasa digunakan tidak 提供maklumat tarikh penciptaan secara langsung.
Untuk mengakses tarikh penciptaan dalam Windows, kita perlu menggunakan kaedah FileInfo.Sys() . Kaedah ini mengembalikan struktur data khusus sistem, yang untuk Windows ialah syscall.Win32FileAttributeData structure.
Struktur Win32FileAttributeData mengandungi pelbagai atribut, termasuk:
Untuk mendapatkan semula masa penciptaan secara khusus, kita boleh menukar cap waktu Nanosaat yang disimpan dalam medan CreationTime kepada objek masa.Masa:
d := fi.Sys().(*syscall.Win32FileAttributeData) cTime := time.Unix(0, d.CreationTime.Nanoseconds())
Adalah penting untuk ambil perhatian bahawa memandangkan fungsi ini khusus Windows, ia sepatutnya dilindungi oleh kekangan binaan untuk mengelakkan isu merentas platform. Ini boleh dilakukan menggunakan fail _windows.go atau arahan //go:build windows.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Tarikh Penciptaan Fail dengan Cekap dalam Windows Menggunakan Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!