gpt4 book ai didi

go - 如何在不进入子目录的情况下迭代目录

转载 作者:数据小太阳 更新时间:2023-10-29 03:07:41 25 4
gpt4 key购买 nike

假设我有以下目录结构:

RootDir
---SubDir1
------SubSubDir
---------file1
---------file2
---SubDir2
---SubDir3
---file3
---file4

我只想遍历 RootDir(SubDir1, Subdir2, Subdir3, file3, file 4) 的内容并检查它是目录还是文件,而不进入子目录,就像 filepath.Walk 一样。

Go 库中有什么方法可以做到这一点吗?

编辑:

files, err := os.Open("c:\\Documents")
file, err := files.Readdir(0)

if err != nil {
fmt.Printf("Error: %s\n", err)
}

for f := range file {
fmt.Println(f.IsDir())
}

所以我在这里尝试遍历 FileInfo,它是一个 slice ,并检查每个文件是否是一个目录,但我总是得到这个错误:

f.IsDir undefined (type int has no field or method IsDir)

最佳答案

您可以通过使用 os.Open 打开目录来读取目录,返回的 *os.File 有一个 Readdir() 方法,它为直接文件夹内容提供 os.FileInfo,这些 FileInfo 有一个 IsDir() 方法。

关于go - 如何在不进入子目录的情况下迭代目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21144895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com