gpt4 book ai didi

file - 写入文件然后立即读回

转载 作者:IT王子 更新时间:2023-10-29 01:56:46 24 4
gpt4 key购买 nike

正如标题所说,我在读取之前写入的文件时遇到问题。 EOF 读取困惑。我调试了各种 go 内部结构,似乎由于某种原因它无法从源读取任何内容,尽管源已同步到文件系统(通过在写入后立即停止程序并检查文件来确认)

这是代码

source, err := os.Create(DESKTOP + "/source.txt")
myPanic(err)

s := "Hello World\n"
_, err1 := source.Write([]byte(s))

myPanic(err1)
source.Sync()

buff := make([]byte, 56)
_, err2 := source.Read(buff)
myPanic(err2)e

如前所述,source.Sync() 没有任何效果,但关闭文件并重新打开它可以解决问题。

os.Create() 的文档指出该文件是使用 O_RDWR 创建的,这对我来说表明以这种方式使用该文件是可以的。我想我一路上错过了一些东西。

为了完整起见:这个例子不是我遇到的原始问题,只是我研究后想出的最简单的案例。

最初我想用 os.Copy 复制源文件,这会创建一个空的目标文件。

最佳答案

您位于文件末尾,因此从那里读取不会返回任何新数据。查找文件的开头:

source.Seek(0, io.SeekStart)

关于file - 写入文件然后立即读回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52655571/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com