golangGolang语言社区Go

go 遍历获取文件夹下所有文件路径

2021-03-30  本文已影响0人  五岁小孩

go 遍历获取文件夹下所有文件路径

代码实现

//获取文件夹下所有的文件
func TPFuncReadDirFiles(dir string) ([]string, error) {
    var files []string
    //方法一
    var walkFunc= func(path string, info os.FileInfo, err error) error {
        if !info.IsDir() {
            files=append(files,path)
        }
        //fmt.Printf("%s\n", path)
        return nil
    }
    err := filepath.Walk(dir, walkFunc)
    return files,err
    //方法二 ,递归

    //fileInfos, err := ioutil.ReadDir(dir)
    //if err != nil {
    //  return nil, err
    //}
    //
    //for _, f := range fileInfos {
    //  if f.IsDir() {
    //      dirFiles, err := TPFuncReadDirFiles(path.Join(dir, f.Name()))
    //      if err==nil {
    //          files=append(files,dirFiles...)
    //      }
    //      continue
    //  }
    //  files = append(files, path.Join(dir, f.Name()))
    //}
    //return files, err
}
func main(){
    //------ 获取文件夹/目录下所有文件
    files, _ := base.TPFuncReadDirFiles("attachment/unidoc")
    fmt.Printf("%+v\n", files)
    fmt.Println("---------------------------")
}
上一篇下一篇

猜你喜欢

热点阅读