」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何使用 Go 在 Windows 中取得檔案的建立日期?

如何使用 Go 在 Windows 中取得檔案的建立日期?

發佈於2024-11-26
瀏覽:848

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

使用 Go 在 Windows 中擷取檔案建立日期

處理檔案時,通常需要擷取諸如建立日期之類的資訊。雖然 os.Stat 和 os.Chtimes 等流行的 Go 套件提供了對其他檔案屬性的深入了解,但獲取建立日期似乎具有挑戰性。本文將示範在 Windows 環境中存取文件建立日期的具體解決方案。

與其他屬性不同,使用上述方法不容易存取建立日期。相反,我們必須深入研究 FileInfo.Sys 方法,它提供系統特定的資料結構。對於 Windows,這對應於 syscall.Win32FileAttributeData 類型。

Win32FileAttributeData 類型包含多個檔案屬性,包括 CreationTime 欄位。該欄位包含一個 Filetime 類型,它表示一個 64 位元整數,表示自 1601 年 1 月 1 日以來的奈秒數。

要擷取 Unix 時間戳格式的建立時間,我們可以使用以下程式碼:

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

這種方式可以讓我們在Windows環境下有效率地取得檔案的建立日期。然而,值得注意的是,該解決方案是特定於 Windows 的,並且應該包含在建置約束中。這可以透過將程式碼放置在 _windows.go 檔案中或使用 //go:build windows 指令來保護它來實現。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3