在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
參數需要進行錯誤處理,可以根據實際需求進行相應的處理。