我想在新创建的文件上写一些东西package mainimport ( "fmt" "io/ioutil" "os")func main() { f, _ := os.Create("temp.txt") contents := "some stuff..." f.WriteString(contents) // <-------- f.Sync() //f.Close() //f, _ = os.Open("temp.txt") b, _ := ioutil.ReadAll(f) fmt.Println(string(b)) // <--------}但写了一些东西然后阅读后,最后一行什么也没打印。为什么?如果我取消上面这两行的注释,一切正常!
1 回答
阿晨1998
TA贡献2037条经验 获得超6个赞
当您读取或写入文件时,您会移动当前位置,因此它会从您离开的位置继续读取/写入。只有一个位置,因此如果您先写然后读,您将从写后剩下的位置开始阅读。
用于f.Seek(0,0)
在写入后将位置移动到文件的开头。
- 1 回答
- 0 关注
- 90 浏览
添加回答
举报
0/150
提交
取消