feat: list folder recursively

This commit is contained in:
2025-02-14 16:17:24 +08:00
parent c523f1a59c
commit f9c4c1c7cf
3 changed files with 61 additions and 2 deletions

30
utils/file_util.go Normal file
View File

@@ -0,0 +1,30 @@
package utils
import (
"os"
"path/filepath"
)
func ListFilesFromFolder(root string, ext string) ([]string, error) {
var files []string
// Walk函数会遍历文件树递归地访问每个目录和文件
err := filepath.Walk(root, func(path string, info os.FileInfo, err error) error {
if err != nil {
return err
}
// 检查是否是文件以及文件后缀是否匹配
if !info.IsDir() && filepath.Ext(path) == "."+ext {
files = append(files, path)
}
return nil
})
if err != nil {
return nil, err
}
return files, nil
}