记录一点Golang文件操作的笔记,环境:Ubuntu
// 删除文件 func removeFile() { err := os.Remove("test.txt") if err != nil { log.Fatal(err) } }
// 写入文件(覆盖原文件) func writeToFile(fileName string, content string) { err := ioutil.WriteFile(fileName, []byte(content), os.ModePerm) if err != nil { fmt.Printf("write err : %v\n", err) }else{ fmt.Println("write success.\n") } } // 写入文件(追加于文本后) func appendToFile(fileName string, content string) error { // open file only read f, err := os.OpenFile(fileName, os.O_WRONLY, 0644) if err != nil { fmt.Println("file create failed. err: " + err.Error()) } else { // offset n, _ := f.Seek(0, os.SEEK_END) _, err = f.WriteAt([]byte(content), n) fmt.Println("write succeed!") } defer f.Close() return err } // 有个坑,PythonJava的写文件默认函数操作默认是覆盖的,而是Golang的OpenFile函数写入默认是追加的
// 外加Linux清空文件内容的操作,比如清空result.json文件内容: cat /dev/null > result.json