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.

相关推荐
kirs_ur26 分钟前
SSD 在 AI 训练中的角色
大数据·服务器·人工智能
tedcloud1231 小时前
OmniRoute怎么部署?开源AI模型路由平台Linux部署教程
linux·服务器·人工智能·开源·音视频
kirs_ur1 小时前
CXL(Compute Express Link)— 内存扩展的未来
服务器·数据库·性能优化
代码村新手2 小时前
Linux的基本指令
linux·运维·服务器
瞬间&永恒~3 小时前
【MySQL】4-6:在同一个主机上使用 systemd 运行多个 MySQL服务器
服务器·数据库·mysql
llwszx7 小时前
【Java/Go后端手撸原生Agent(第九篇):Plan-and-Execute规划模式——从“走一步看一步“到“先谋后动“】
java·python·golang·agent开发·plan模式·规划执行模式
ZJH__GO7 小时前
网络编程v2--多客户端互通
java·运维·服务器·开发语言·计算机网络
顧棟7 小时前
Zookeeper热缩容解析
linux·服务器·zookeeper
三言老师8 小时前
CentOS7.9:Redis服务器部署结构化实战教程
linux·运维·服务器·数据库
味悲8 小时前
Linux提权
linux·服务器·安全