Windows で Go を使用してファイルの作成日を取得するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-20 18:54:14
オリジナル
104 人が閲覧しました

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

Go を使用した Windows でのファイル作成日の確認

Go を使用した Windows でのファイルの作成日の確認は、OS パッケージを利用して実現できます。

os.Stat 関数は、Windows 固有のシステム データ構造へのアクセスを提供します。ファイルのメタデータですが、作成日は含まれません。代わりに、FileInfo.Sys() メソッドを使用して、基になるシステム固有のデータ構造を取得する必要があります。Windows の場合、これは syscall.Win32FileAttributeData 構造体です。

Win32FileAttributeData 構造体には、次のようなさまざまな属性が含まれています。 「CreationTime」フィールド。このフィールドは、ファイルの作成タイムスタンプを Filetime 構造として表します。人間が判読できる時刻値に変換するには、ナノ秒の精度係数を持つ time.Unix 関数を使用します。

コード スニペットの例を次に示します。

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)
}
ログイン後にコピー

この Windows を保護することを忘れないでください。専用の _windows.go ファイル内で、または //go:build Windows 構文を使用して、ビルド制約を使用した特定のコード。

以上がWindows で Go を使用してファイルの作成日を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート