我不要打开文件的时候清空,我是要读取文件内容,然后清空再写入新的。
如何清空?
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)
7 回答5.3k 阅读
6 回答6.8k 阅读✓ 已解决
4 回答2.3k 阅读
1 回答3.3k 阅读
2 回答898 阅读✓ 已解决
2 回答2.2k 阅读
1 回答2.1k 阅读
os.Truncate(name, size)
or
func (f *File) Truncate(size int64) error
size 填0 就把文件清空了。