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.

相关推荐
va学弟6 小时前
Java 网络通信编程(6):视频通话
java·服务器·网络·音视频
V__KING__8 小时前
systemd-remount-fs,fstab之间的渊源
linux·服务器·网络
Titan20249 小时前
Linux环境变量个人笔记
linux·服务器·c++
zx_zx_1239 小时前
传输层协议tcp (2)
服务器·网络·tcp/ip
青柠代码录9 小时前
【Linux】路径区分:testdir、testdir/、testdir/*
linux·运维·服务器
mounter62511 小时前
基于MLX设备的Devlink 工具全指南与核心架构演进
linux·运维·服务器·网络·架构·kernel
wefg111 小时前
【计算机网络】网络基础 - 1(网络协议/TCP/IP协议栈/局域网内外数据传输/数据封装、解包、分用)
linux·服务器·网络
xuanwojiuxin11 小时前
[linux] what‘s the kdump?
linux·运维·服务器
透明的玻璃杯11 小时前
关于QT客户端和服务器端之前状态监控
运维·服务器