要获取当前目录下的所有文件名和文件大小,可以使用Go语言的osfilepath包。

首先,使用os.Open函数打开当前目录。然后,使用os.Readdir函数读取目录中的所有文件和子目录。对于每个文件,可以使用os.Stat函数获取文件的信息,包括文件名和文件大小。

以下是一个示例代码:

package main

import (
	"fmt"
	"os"
	"path/filepath"
)

func main() {
	dir, err := os.Open(".")
	if err != nil {
		fmt.Println("Failed to open directory:", err)
		return
	}
	defer dir.Close()

	fileInfos, err := dir.Readdir(-1)
	if err != nil {
		fmt.Println("Failed to read directory:", err)
		return
	}

	for _, fileInfo := range fileInfos {
		if fileInfo.Mode().IsRegular() {
			fmt.Println("File name:", fileInfo.Name())
			fmt.Println("File size:", fileInfo.Size())
		}
	}
}

在上面的示例中,os.Open函数打开当前目录,os.Readdir函数读取目录中的所有文件和子目录,并将结果存储在fileInfos切片中。然后,对于每个文件,使用fileInfo.Mode().IsRegular()函数判断是否为普通文件,如果是则打印文件名和文件大小。

注意,上述代码仅获取当前目录下的文件名和文件大小,不包括子目录。如果需要递归地获取所有文件名和文件大小,可以使用filepath.Walk函数。

golang获取当前目录下的所有文件名和文件大小

原文地址: https://www.cveoy.top/t/topic/hOy6 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录