Golang 计算目录下文件数量:高效指南与代码示例
要计算一个目录下的文件个数,可以使用以下方法:
- 使用
ioutil.ReadDir()函数读取目录下的所有文件和子目录。 - 遍历读取到的文件和子目录,使用
os.Stat()函数获取每个文件和子目录的信息。 - 判断每个读取到的文件和子目录是否是文件,如果是文件,则计数器加1。
- 返回计数器的值作为目录下文件的个数。
下面是一个示例代码:
package main
import (
"fmt"
"io/ioutil"
"log"
"os"
)
func countFiles(dir string) (int, error) {
files, err := ioutil.ReadDir(dir)
if err != nil {
return 0, err
}
count := 0
for _, file := range files {
fileInfo, err := os.Stat(dir + "/" + file.Name())
if err != nil {
log.Println(err)
continue
}
if !fileInfo.IsDir() {
count++
}
}
return count, nil
}
func main() {
dir := "path/to/directory"
count, err := countFiles(dir)
if err != nil {
log.Fatal(err)
}
fmt.Printf("Number of files in %s: %d\n", dir, count)
}
请注意替换dir变量的值为你要计算文件个数的目录的路径。
原文地址: https://www.cveoy.top/t/topic/fz93 著作权归作者所有。请勿转载和采集!