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.

相关推荐
小周学学学14 小时前
vcenter的SMB备份
运维·服务器·vmware·虚拟化
qq_3106585114 小时前
mediasoup源码走读(十二)——router
服务器·c++·音视频
BullSmall14 小时前
Apache Doris 精细化调优配置指南
linux·运维·服务器·database
QT 小鲜肉14 小时前
【Linux命令大全】001.文件管理之chattr命令(实操篇)
linux·运维·服务器·笔记
落羽的落羽14 小时前
【C++】哈希扩展——位图和布隆过滤器的介绍与实现
linux·服务器·开发语言·c++·人工智能·算法·机器学习
濊繵15 小时前
Linux网络--网络层协议 IP
服务器·网络·tcp/ip
云和数据.ChenGuang15 小时前
批量给100台服务器装系统,还要完成后续的配置和软件部署
运维·服务器·开发语言·mysql
锥锋骚年15 小时前
golang 发送内网邮件和外网邮件
开发语言·后端·golang
古城小栈15 小时前
工业互联网:Go + 边缘计算实现设备监控实战
人工智能·golang·边缘计算
令狐囱15 小时前
宝塔docker 运行 go-zero-looklook项目
docker·容器·golang