php中文网

如何使用 Go fastwalk 库递归遍历文件夹,包括子目录?

php中文网

如何使用 go fastwalk 递归遍历文件夹,包括子目录

在 fastwalk 库中,要遍历文件夹,包括子目录,可以使用 walk 函数。要指定遍历行为,需要在 config 结构中配置选项,并提供一个名为 walkfn 的回调函数。

以下是使用 fastwalk 进行递归遍历的修正示例代码:

// github.com/charlievieth/fastwalk

func main() {
    conf := fastwalk.Config{
        Follow: false,
    }

    var walkFn = func(path string, d fs.DirEntry, err error) error {
        if err != nil {
            return nil
        }

        if d.IsDir() {
            data_temp = append(data_temp, path+"")
            return fastwalk.Walk(&conf, path, walkFn)
        }
        data_temp = append(data_temp, path)
        return nil
    }

    _ := fastwalk.Walk(&conf, "文件夹路径", walkFn)
    fmt.Println(data_temp)
}

修复了以下错误:

  • walkfn 现已正确定义为变量,在使用之前已声明。

以上就是如何使用 Go fastwalk 库递归遍历文件夹,包括子目录?的详细内容,更多请关注php中文网其它相关文章!