go如何清空文件内容?

我不要打开文件的时候清空,我是要读取文件内容,然后清空再写入新的。
如何清空?

阅读 28.6k
3 个回答

os.Truncate(name, size)

or

func (f *File) Truncate(size int64) error

size 填0 就把文件清空了。

f, err := os.OpenFile(file, os.O_WRONLY|os.O_TRUNC, 0600)
defer f.Close()

num, err := f.WriteString("你的content")

这样 就行了,你试试

不需要可以的清空,按照你自己的需求,这样就能满足,先读,写入的时候,自动覆盖之前的内容,ok了,亲自去试试把

打开时清空,用 os.O_TRUNC

file, _ := os.OpenFile(filepath, os.O_RDWR|os.O_TRUNC, 0666)

打开后清空,先清空再移动到开头:

file, _ := os.OpenFile(filepath, os.O_RDWR, 0666)
// do something ...
file.Truncate(0)
file.Seek(0, 0)

不打开文件,单纯就是要清空:

os.Truncate(filepath, 0)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题