package main
import (
"bufio"
"fmt"
"io/ioutil"
"os"
)
func writeDemo1(filename string) {
file, err := os.OpenFile(filename, os.O_APPEND|os.O_CREATE, os.ModePerm)
if err != nil {
fmt.Printf("open file failed, err: %v\n", err)
return
}
defer func(file *os.File) {
err := file.Close()
if err != nil {
fmt.Printf("close file failed, err: %v\n", err)
return
}
}(file)
n, err := file.Write([]byte("今天天气还不错。\n"))
if err != nil {
return
}
fmt.Printf("写入了 %d 个字节\n", n)
n, err = file.WriteString("可以愉快的玩耍了。\n")
if err != nil {
return
}
fmt.Printf("写入了 %d 个字节\n", n)
}
func writeDemo2(filename string) {
file, err := os.OpenFile(filename, os.O_CREATE|os.O_APPEND, os.ModeAppend)
if err != nil {
fmt.Printf("open file failed, err: %v\n", err)
return
}
defer func(file *os.File) {
err := file.Close()
if err != nil {
fmt.Printf("close file failed, err: %v\n", err)
return
}
}(file)
wr := bufio.NewWriter(file)
_, err2 := wr.Write([]byte("昨天天气不错,我们去公园玩去了。\n"))
if err2 != nil {
fmt.Printf("写入数据失败, err: %v\n", err2)
return
}
_, err2 = wr.WriteString("昨天玩的很开心。\n")
if err2 != nil {
fmt.Printf("写入数据失败, err: %v\n", err2)
return
}
}
func writeDemo3(filename string) {
str := "使用outil.WriteFile方法写文件"
err := ioutil.WriteFile(filename, []byte(str), os.ModeAppend)
if err != nil {
fmt.Printf("写入数据失败,err: %v\n", err)
}
}
func main() {
filename := "day05/text.txt"
writeDemo1(filename)
writeDemo2(filename)
writeDemo3(filename)
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构