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.

相关推荐
疯狂成瘾者4 分钟前
服务器的单体和集群
运维·服务器
SWAGGY..4 小时前
Linux系统编程:(二)基础指令详解
linux·运维·服务器
2501_931803755 小时前
Go:一门为解决C语言痛点而生的现代语言
c语言·开发语言·golang
蜡笔婧萱5 小时前
Linux--远程登录服务ssh
linux·服务器·ssh
geovindu5 小时前
go: Interpreter Pattern
开发语言·设计模式·golang·解释器模式
雾岛心情6 小时前
小铭邮件管理工具箱的界面(公司版)
运维·服务器·工具·o365·小铭邮件工具箱(公司版)
伏加特遇上西柚6 小时前
Loki+Alloy+Grafana日志采集部署
java·linux·服务器·spring boot·grafana·prometheus
zl_dfq6 小时前
服务器设计细节 之 【eventfd、struct stat、stat接口】
服务器
资源分享助手6 小时前
三网H5小游戏战车向前冲搭建教程(Win+Linux)
linux·运维·服务器
无限进步_6 小时前
Linux权限模型:从rwx到粘滞位
linux·运维·服务器