golang 获取目录下所有的文件夹

package main

import (
	"fmt"
	"os"
	"path/filepath"
)

func main() {
	list, err := getDirList("/test")
	if err != nil {
		fmt.Println(err)
		return
	}
	for _, v := range list {
		fmt.Println(v)
	}

}

func getDirList(dirpath string) ([]string, error) {
	var dir_list []string
	dir_err := filepath.Walk(dirpath,
		func(path string, f os.FileInfo, err error) error {
			if f == nil {
				return err
			}
			if f.IsDir() {
				dir_list = append(dir_list, path)
				return nil
			}

			return nil
		})
	return dir_list, dir_err
}

猜你喜欢

转载自blog.csdn.net/liangguangchuan/article/details/77482186