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.

相关推荐
誰能久伴不乏11 分钟前
深入理解 `poll` 函数:详细解析与实际应用
linux·服务器·c语言·c++·unix
阿里巴啦20 分钟前
从零搭建移动端数字人生成应用:React + Go + D‑ID 实战
react.js·golang·状态模式·数字人·did·ai移动端数字人
倔强的石头10622 分钟前
Linux 进程深度解析(二):进程状态、fork 创建与特殊进程(僵尸 与 孤儿)
linux·运维·服务器
小李小李无与伦比35 分钟前
使用Simiki,部署.md文档
linux·运维·服务器
做人不要太理性40 分钟前
【Linux系统】ELF 文件格式的硬核揭秘
java·linux·服务器
草根站起来1 小时前
局域网内网IP能不能申请SSL证书
服务器·tcp/ip·ssl
怀旧,1 小时前
【Linux系统编程】12. 基础IO(下)
linux·运维·服务器
松涛和鸣1 小时前
29、Linux进程核心概念与编程实战:fork/getpid全解析
linux·运维·服务器·网络·数据结构·哈希算法
代码不行的搬运工2 小时前
显式拥塞通知(ECN)机制
运维·服务器·网络·算力网络
资深web全栈开发2 小时前
Go语言从1.18到1.25版本功能更新详解
开发语言·后端·golang