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.

相关推荐
RisunJan20 分钟前
Linux命令-lvdisplay(显示逻辑卷属性)
linux·运维·服务器
茶杯梦轩20 分钟前
从零起步学习并发编程 || 第二章:多线程与死锁在项目中的应用示例
java·服务器·后端
Trouvaille ~34 分钟前
【Linux】网络层与IP协议详解:从地址到路由的完整指南
linux·运维·服务器·网络·tcp/ip·路由器·网络层
袁袁袁袁满42 分钟前
Ubuntu怎么查看系统日志?
linux·运维·服务器·ubuntu
开开心心_Every1 小时前
剪切板工具存500条,可搜索备份导入导出
linux·运维·服务器·华为od·edge·pdf·华为云
2301_816073831 小时前
RHCA扩展
linux·运维·服务器·虚拟机启动
海兰2 小时前
Elastic Stack 9.3.0 日志探索
java·服务器·前端
~央千澈~3 小时前
抖音弹幕游戏开发之第7集:识别不同类型的消息·优雅草云桧·卓伊凡
java·服务器·前端
feng68_3 小时前
抓包理解LVS中的DR模式
服务器·网络·lvs
-cywen-3 小时前
pycharm远程连接服务器
服务器·pycharm