GOLANG - 特定の日付範囲内に作成されたファイルを検索します

WBOY
リリース: 2024-02-09 22:30:08
転載
999 人が閲覧しました

GOLANG - 查找在某个日期范围内创建的文件

日常の仕事では、特定の日付範囲内に作成されたファイルを検索する必要があることがよくあります。 GOLANG では、この機能を実現するためにいくつかの組み込み関数とライブラリを使用できます。この記事では、PHP エディター Xiaoxin が、GOLANG プログラミング言語を使用して、指定された日付範囲内のファイルを検索する機能を実装する方法を紹介します。日常の仕事でも個人的なプロジェクトでも、この機能は非常に実用的です。一緒に調べてみましょう。

質問内容

特定の日付範囲内の特定のフォルダー内のファイルを検索する方法を知りたいです。例: 2013 年 8 月 1 日から 2013 年 8 月 31 日までの間に作成されたフォルダー x 内のすべてのファイルを検索したいとします。

これを試してみました:

dir := "path/to/dir"
t, err := time.Parse("2006-01-02T15:04:05-07:00", "2018-04-07T05:48:03+08:00")

if err != nil {
    panic(err)
}

paths, infos, err := FindFilesAfter(dir, t)
if err != nil {
    panic(err)
}

for i, _ := range paths {
    checkFile(paths[i], infos[i])
}

func FindFilesAfter(dir string, t time.Time) (paths []string, infos []os.FileInfo, err error) {
    err = filepath.Walk(dir, func(p string, i os.FileInfo, e error) error {
        if e != nil {
            return e
        }

        if !i.IsDir() && i.ModTime().After(t) {
            paths = append(paths, p)
            infos = append(infos, i)
        }
        return nil
    })
    return
}
ログイン後にコピー

解決策

次の回答があなたが探しているものであることを願っています。 ​​p>

  • 質問が時間範囲に関するものである場合は、パッケージ before および after の関数 time
  • を使用できます。
  • 質問が、変更時間ではなく作成時間を見つけることに関するものである場合。 atime、mtime、ctime を見つけるためにパッケージ syscall を使用することを検討してもよいでしょう - 本質的には次のとおりです:

atime(アクセスタイム)はファイルアクセス時間です

mtime (変更時間) はファイルの変更時間です。

ctime (変更時間) は、inode またはファイルの変更時間です。

リーリー

以上がGOLANG - 特定の日付範囲内に作成されたファイルを検索しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!