在Go语言中,可以使用os
包中的Stat
函数获取文件的信息,包括文件大小。然后可以使用filepath
包中的Walk
函数遍历文件夹中的所有文件,结合os
包提供的文件操作函数,可以实现遍历获取文件大小的功能。
以下是一个示例代码:
package main
import (
"fmt"
"os"
"path/filepath"
)
func main() {
root := "/path/to/folder" // 需要遍历的文件夹路径
err := filepath.Walk(root, func(path string, info os.FileInfo, err error) error {
if err != nil {
return err
}
// 判断是否为文件
if !info.IsDir() {
size := info.Size() // 获取文件大小
fmt.Printf("File: %s, Size: %d bytes\n", path, size)
}
return nil
})
if err != nil {
fmt.Printf("Error: %s\n", err)
}
}
在上面的示例中,需要将root
变量替换为实际的文件夹路径。然后使用filepath.Walk
函数遍历该文件夹下的所有文件,对于每个文件,通过info.Size()
获取文件大小。最后打印文件路径和文件大小。
注意,上述代码中的err
参数需要进行错误处理,可以根据实际需求进行相应的处理。