golang遞歸遍歷文件夾


1、標准庫

import "path/filepath"

var fileList []string
func walkFunc(path string, info os.FileInfo, err error) error {
//fmt.Println(path)
if !info.IsDir() {
fileList = append(fileList, path)
}
return nil
}
filepath.Walk("D:\\nginx\\e.djbx.com\\nginxlog\\", walkFunc)
fmt.Println(len(fileList))

2、遞歸

var fileList []string
func GetAllFile(pathname string) error {
rd, err := ioutil.ReadDir(pathname)
for _, fi := range rd {
if fi.IsDir() {
//fmt.Printf("[%s]\n", pathname+"\\"+fi.Name())
GetAllFile(pathname + fi.Name() + "\\")
} else {
//fmt.Println(fi.Name())
fileList = append(fileList, pathname + fi.Name())
}
}
return err
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM