如果给定路径,我将使用它来获取文件大小
file, _ := os.Open(path)
fi, _ := file.Stat()
fsuze := fi.Size()
但是如果仅给 指定fd
,如何获取文件大小?
在C语言中,Go像这样有什么办法吗?
lseek(fd, 0, SEEK_END)
答案 0 :(得分:2)
您可以使用os.NewFile
函数从文件描述符中创建新的*os.File
。
您可以使用Seek
offset, err := f.Seek(0, os.SEEK_END)
但是由于您已经拥有*os.File
,因此即使它直接从文件描述符派生,也可以调用Stat
。
答案 1 :(得分:0)
尝试使文件开始
fileInfo, err := file.Stat()
if err != nil {...
}
files fileInfo.Size())