246_尚硅谷_创建文件并写入内容
1.写文件操作应用实例
2.创建一个新文件, 写入内容 5句 “hello, Gardon”
package main
import (
"bufio"
"fmt"
"os"
)
// 1) 创建一个新文件, 写入内容 5句 “hello, Gardon”
func main() {
fmt.Printf("=============== 开始文件写入 ===============\n")
// 1. 打开文件, C:\Users\wxe5szh\OneDrive - Bosch Group\PersonalDrive\task\golang_study\246_尚硅谷_创建文件并写入内容\files\abc.txt
filePath := "C:/Users/wxe5szh/OneDrive - Bosch Group/PersonalDrive/task/golang_study/246_尚硅谷_创建文件并写入内容/files/abc.txt"
// * 解释 os.OpenFile(文件路径, 只写模式 | 创建文件, 0666)
file, err := os.OpenFile(filePath, os.O_WRONLY|os.O_CREATE, 0666)
if err != nil {
fmt.Printf("open file err = %v", err)
return
}
// 及时关闭file句柄
defer file.Close()
// 准备写入内容 5句 “hello, Gardon”
str := "hello, Gardon\n"
// 写入时使用带缓存的 *Writer
writer := bufio.NewWriter(file)
for i := 0; i < 5; i++ {
writer.WriteString(str)
}
// 因为writer是带缓存的,因此在调用WriterString方法时,
// 其实内容是先写入到缓存, 所以需要调用Flush方法,将缓存的数据
// 真正写入到文件中,否则文件中会丢失数据,会没有数据
// ! 一定要写!!!!!
writer.Flush()
fmt.Printf("=============== 结束文件写入 ===============")
}
浙公网安备 33010602011771号