當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


GO WalkDir用法及代碼示例

GO語言"io/fs"包中"WalkDir"函數的用法及代碼示例。

用法:

func WalkDir(fsys FS, root string, fn WalkDirFunc) error

WalkDir 遍曆以根為根的文件樹,為樹中的每個文件或目錄調用 fn,包括根。

訪問文件和目錄時出現的所有錯誤都由 fn 過濾:有關詳細信息,請參閱 fs WalkDirFunc 文檔。

這些文件按詞法順序遍曆,這使得輸出具有確定性,但需要 WalkDir 在繼續遍曆該目錄之前將整個目錄讀入內存。

WalkDir 不跟隨在目錄中找到的符號鏈接,但如果 root 本身是符號鏈接,它的目標將被遍曆。

例子:

package main

import (
    "fmt"
    "io/fs"
    "log"
    "os"
)

func main() {
    root := "/usr/local/go/bin"
    fileSystem := os.DirFS(root)

    fs.WalkDir(fileSystem, ".", func(path string, d fs.DirEntry, err error) error {
        if err != nil {
            log.Fatal(err)
        }
        fmt.Println(path)
        return nil
    })
}

相關用法


注:本文由純淨天空篩選整理自golang.google.cn大神的英文原創作品 WalkDir。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。