使用Go,我正在编写一个小实用程序,部分需要注意打开文件的文件名是否发生变化.以下代码说明了我尝试的方法:
@H_403_1@package main
import "os"
import "fmt"
import "time"
func main() {
path := "data.txt"
file,_ := os.Open(path)
for {
details,_ := file.Stat()
fmt.Println(details.Name())
time.Sleep(5 * time.Second)
}
}
这只是启动无限循环,运行file.Stat()每5秒获取一次文件详细信息然后打印出名称.但是,尽管在运行时更改了文件名,但上述输出不会改变.
用details.Size()替换details.Name()会注意到filesize的更改.
这只是我的Go版本中的一个错误,还是我只是做错了?我无法在任何地方找到这样的问题.
我在Mac上运行它,使用Go版本1.1.1(darwin / amd64).
在此先感谢任何回复:)