Go 自学:文件的写入和读取

首先,使用os.Create()函数建立一个文件。

接着,使用io.WriteString()函数将内容写入文件。

最后,使用os.ReadFile()函数读取文件内容。

注意,这里读取的文件内容是data byte,我们需要使用string()函数将其转换为字符串。

go 复制代码
package main

import (
	"fmt"
	"io"
	"os"
)

func main() {
	content := "This needs to go in a file."

	file, err := os.Create("./mygofile.txt")
	checkNilErr(err)

	length, err := io.WriteString(file, content)
	checkNilErr(err)

	fmt.Println("length is: ", length)
	defer file.Close()

	readFile("./mygofile.txt")

}

func readFile(filename string) {
	databyte, err := os.ReadFile(filename)
	checkNilErr(err)

	fmt.Println("Text data inside the file is \n", string(databyte))
}

func checkNilErr(err error) {
	if err != nil {
		panic(err)
	}
}

输出为:

length is: 27

Text data inside the file is

This needs to go in a file.

相关推荐
Sylvia33.3 小时前
从轮询到推送:足球数据API架构演进与火星数据技术拆解
java·服务器·网络·python·websocket·架构
圣殿骑士-Khtangc5 小时前
Go-Map面试核心考点从哈希冲突到并发安全的完整解析
面试·golang·哈希算法
worxfr5 小时前
Go 并发控制:从 Channel 方向约束到实战模式
开发语言·后端·golang
程序员老陆6 小时前
说一说FFmpeg6在Linux平台的编译
linux·运维·服务器·ffmpeg
玫幽倩6 小时前
2026黄河流域公安院校-电子物证单项赛(程序逆向分析+服务器取证)
运维·服务器·python·电子取证·逆向·程序分析·服务器取证
xcLeigh6 小时前
Go入门:短变量声明的陷阱与最佳实践
java·redis·golang·教程·变量
JavaPub-rodert6 小时前
我又把自己的 Go 后台管理系统升级了一遍:文件管理、2GB 上传、私有文件预览、Docker 镜像全安排上了
开发语言·docker·golang·shiyuadmin
名字还没想好☜7 小时前
Go 的 sync.Cond 实战:用条件变量做等待/通知,比忙轮询省 CPU
开发语言·数据库·后端·golang·go
运维行者_8 小时前
企业带宽监控工具实战:网络流量分析与异常排查的5个关键能力
运维·服务器·开发语言·网络·分布式·后端·php
March.s8 小时前
Nginx 服务器反向代理实战指南
服务器·nginx·github