golang 写入文件 覆盖旧文件 将旧文件清空
Golang在使用写入文件,或是直接使用文件接口读写文件时,在写入后立刻断电,重启后文件存在,但是为空,没有任何数据,造成了数据丢失,代码如下:
原因及解决
操作系统为了系统性能考,写入文件并不会直接写入到磁盘,而是写入到缓存中,当满足一定条件时,一次性写入磁盘。实际上操作系统也提供一些API可以将缓存写入磁盘,因此Golang对其进行了封装。使用时只需要在打开文件时增加 标识就可以
完整代码如下:
参考文献
[1]. studygolang . Go语言标准库 - 6.1 文件 I/O . https: