go 文件不存在时自动创建,文件存在则追加内容

 基础语法  2022-04-30  admin  3320  4482

// PutContentFile 写入文件
// 文件不存在时自动创建,文件存在则追加内容
func PutContentFile(path string, content string) {
   file, err := os.OpenFile(path, os.O_CREATE|os.O_APPEND|os.O_RDWR, 0666)
   if err != nil {
      log.Fatal(err)
   }
   defer func(file *os.File) {
      err := file.Close()
      if err != nil {
         log.Fatal(err)
      }
   }(file)

   _, err = file.Write([]byte(content))
   if err != nil {
      log.Fatal(err)
   }

   // 下面的属性可以单独使用,也可以组合使用。
   // 组合使用时可以使用 OR 操作设置 OpenFile的第二个参数,例如:
   // os.O_CREATE|os.O_APPEND
   // 或者 os.O_CREATE|os.O_TRUNC|os.O_WRONLY

   // os.O_RDONLY // 只读
   // os.O_WRONLY // 只写
   // os.O_RDWR // 读写
   // os.O_APPEND // 往文件中添建(Append)
   // os.O_CREATE // 如果文件不存在则先创建
   // os.O_TRUNC // 文件打开时裁剪文件
   // os.O_EXCL // 和O_CREATE一起使用,文件不能存在
   // os.O_SYNC // 以同步I/O的方式打开
}

测试

package main

import (
   "log"
   "os"
)

func main() {
   path := "text3.log"
   content := "学习go\n"
   PutContentFile(path, content)
}


如果文章对您有帮助,点击下方的广告,支持一下作者吧!

相关推荐


写了 30 多个 Go 常用文件操作的示例,收藏这一篇就够了

原文:收藏!30 多个 Go 常用文件操作的示例 (qq.com)原文:写了 30 多个 Go 常用文件操作的示例,收藏这一篇就够了 (qq.com)Go官方提供的文件操作标准库分散在os、ioutil等多个包中,里面有非常多的方法涵盖了文件操作的所有场景,不过因为我平时开发过程中需要直接操作文件的场景其实并不多,在加上 Go 标准库的文档太难搜索,每次遇到要使用文件函数时都是去 Google 查

Laravel 自定义表单验证规则,验证过滤表情文字

Laravel 自定义表单验证规则,验证过滤表情文字

go写入文件,文件不存在则创建,如在则追加内容

写入文件,文件不存在则创建,如在则追加内容packagemain import( "fmt" "os" ) //写入文件,文件不存在则创建,如在则追加内容 funcWriteFile(pathstring,strstring){ _,b:=IsFile(path) varf*os.File varerrerror if

Laravel自定义表单验证规则,添加验证规则

Laravel 提供了许多有用的验证规则;同时也支持自定义规则。在服务容器中使用这个方法来注册自定义验证规则: Laravel 自定义规则实现手机号、身份证号、密码强度的验证