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


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。