如何用 golang 遍历指定目录下所有文件并读取其中runTestlog文件内容和文件大小
可以使用 filepath 包中的 Walk 函数来遍历指定目录下的所有文件。然后,可以使用 os 包中的 Stat 函数来获取文件的大小,使用 ioutil 包中的 ReadFile 函数来读取文件内容。
下面是一个示例代码:
package main
import (
"fmt"
"io/ioutil"
"os"
"path/filepath"
)
func main() {
root := "/path/to/directory"
err := filepath.Walk(root, func(path string, info os.FileInfo, err error) error {
if err != nil {
return err
}
if info.IsDir() {
return nil
}
if info.Name() == "runTest.log" {
size := info.Size()
content, err := ioutil.ReadFile(path)
if err != nil {
return err
}
fmt.Printf("File: %s\nSize: %d\nContent: %s\n", path, size, content)
}
return nil
})
if err != nil {
fmt.Println(err)
}
}
在上面的代码中,我们使用 Walk 函数来遍历 root 目录下的所有文件和子目录。对于每个文件,我们检查它是否是 runTest.log 文件。如果是,我们使用 Stat 函数获取文件大小,并使用 ReadFile 函数读取文件内容。最后,我们打印文件路径、大小和内容。
注意,上面的代码假设 runTest.log 文件是文本文件,所以我们使用 fmt.Printf 函数来打印文件内容。如果 runTest.log 文件是二进制文件,我们应该使用不同的方式来打印文件内容
原文地址: https://www.cveoy.top/t/topic/hgq6 著作权归作者所有。请勿转载和采集!