读写文件操作OpenFile()

func generalWrite(filepath string, param string) {
	//创建文档,赋予读写权限
	f, err := os.OpenFile(filepath, os.O_WRONLY|os.O_CREATE|os.O_APPEND, 0666)
	if err != nil {
		log.Println("open file error :", err)
		return
	}
	// 关闭文件
	defer f.Close()
	// 字符串写入
	_, err = f.WriteString(param)
	if err != nil {
		log.Println("write string failed :",err)
		return
	}
}

//附:
O_RDONLY int = syscall.O_RDONLY // 只读模式打开文件
O_WRONLY int = syscall.O_WRONLY // 只写模式打开文件
O_RDWR   int = syscall.O_RDWR   // 读写模式打开文件

O_APPEND int = syscall.O_APPEND // 写操作时将数据附加到文件尾部
O_CREATE int = syscall.O_CREAT  // 如果不存在将创建一个新文件
O_EXCL   int = syscall.O_EXCL   // 和O_CREATE配合使用,文件必须不存在
O_SYNC   int = syscall.O_SYNC   // 打开文件用于同步I/O
O_TRUNC  int = syscall.O_TRUNC  // 如果可能,打开时清空文件
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在Lisp中,可以使用`open`函数来打开文件进行读写操作。`open`函数的语法如下: ```lisp (open filename &key direction if-exists if-does-not-exist external-format) ``` 其中,`filename`是要打开的文件名,可以是一个字符串或者一个路径名对象。`direction`参数指定了文件的打开方式,可以是`:input`(读取模式)、`:output`(写入模式)或者`:io`(读写模式)。`if-exists`参数指定了文件存在时的处理方式,可以是`:new-version`(创建新版本)、`:rename`(重命名文件)或者`:overwrite`(覆盖文件)。`if-does-not-exist`参数指定了文件不存在时的处理方式,可以是`:error`(报错)、`:create`(创建新文件)或者`:nil`(返回nil)。`external-format`参数指定了文件的编码格式,默认为`:default`。 下面是一个示例,演示了如何使用Lisp的`open`函数来读取和写入文件: ```lisp ;; 打开文件进行读取 (let ((file (open "example.txt" :direction :input))) (loop for line = (read-line file nil) while line do (format t "~a~%" line)) (close file)) ;; 打开文件进行写入 (let ((file (open "example.txt" :direction :output))) (format file "Hello, World!") (close file)) ``` 在上面的示例中,首先使用`(open "example.txt" :direction :input)`打开了一个名为"example.txt"的文件进行读取操作。然后使用`read-line`函数逐行读取文件内容,并使用`format`函数将每行内容输出到控制台。最后使用`(open "example.txt" :direction :output)`打开同一个文件进行写入操作,使用`format`函数将字符串"Hello, World!"写入文件中。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值