以下是实现文件写入函数的代码:
package main
import (
"fmt"
"os"
)
func WriteToFile(filepath string, content string) error {
// 打开文件
file, err := os.OpenFile(filepath, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0666)
if err != nil {
return fmt.Errorf("failed to open file: %v", err)
}
// 延迟关闭文件
defer file.Close()
// 写入字符串
_, err = file.WriteString(content)
if err != nil {
return fmt.Errorf("failed to write to file: %v", err)
}
return nil
}
func main() {
err := WriteToFile("/path/to/file.txt", "hello world!")
if err != nil {
fmt.Println(err)
}
}
在这段代码中,WriteToFile
函数需要传入两个参数:文件绝对路径和待写入的字符串内容。首先会尝试打开文件,若打开失败则返回错误信息。打开成功后,使用 defer
语句延迟关闭文件对象,确保不会忘记关闭文件。
接着,通过 file.WriteString
函数写入字符串,如果写入失败则返回错误信息。最后,如果一切顺利,则返回 nil 表示写入成功。