Golang覆盖写入文件的小坑

记录一点Golang文件操做的笔记,环境:Ubuntujson

// 删除文件
func removeFile() { err := os.Remove("test.txt") if err != nil { log.Fatal(err) } } 

 

/* 文件操做 */
// 有个坑,Python、Java的写文件默认函数操做默认是覆盖的,而是Golang的OpenFile函数写入默认是追加的 // os.O_TRUNC 覆盖写入,不加则追加写入
func WriteToFile(fileName string, content string) error { f, err := os.OpenFile(fileName, os.O_WRONLY|os.O_TRUNC|os.O_CREATE, 0644) if err != nil { fmt.Println("file create failed. err: " + err.Error()) } else { // offset //os.Truncate(filename, 0) //clear
      n, _ := f.Seek(0, os.SEEK_END) _, err = f.WriteAt([]byte(content), n) fmt.Println("write succeed!") defer f.Close() } return err }

 

 

// Linux清空文件内容的操做,好比清空result.json文件内容:
cat /dev/null > result.json
相关文章
相关标签/搜索