golang 有没有PHP的file_put_contents()这样的使用起来很方便的函数进行写入操作呢?

PHP有内置函数:

file_put_contents_() 函数把一个字符串写入文件中

golang 有没有这样的使用起来很方便的函数进行写入操作呢?

阅读 5.4k
5 个回答

内置函数,没有,自己封装一个呗.

func main() {
    writeFile("1.txt", "xxx")
}

func writeFile(filename string, content string) bool {
    _, err := os.Stat(filename)
    if err != nil {
        if !os.IsExist(err) {
            os.Create(filename)
        }
    }
    file, err := os.OpenFile(filename, os.O_APPEND|os.O_WRONLY, os.ModeAppend)
    defer file.Close()
    if err != nil {
        return false
    }
    _, err = file.WriteString(content)
    if err != nil {
        return false
    }
    return true
}

ioutil.WriteFile()这个方法应该可以满足你的需求。直接将字节写入到文件

// WriteFile writes data to a file named by filename.
// If the file does not exist, WriteFile creates it with permissions perm
// (before umask); otherwise WriteFile truncates it before writing.
func WriteFile(filename string, data []byte, perm os.FileMode) error {
    f, err := os.OpenFile(filename, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, perm)
    if err != nil {
        return err
    }
    _, err = f.Write(data)
    if err1 := f.Close(); err == nil {
        err = err1
    }
    return err
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题