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.

相关推荐
尚久龙1 分钟前
安卓学习 之 用户登录界面的简单实现
android·运维·服务器·学习·手机·android studio·安卓
qq_1728055918 分钟前
GO RPC 教学文档
qt·rpc·golang
呆萌小新@渊洁1 小时前
linux升级系统,重启出现Minimal BASH-like line editingis supported
linux·服务器
東雪蓮☆1 小时前
从零开始掌握 Web 与 Nginx:入门详解
运维·服务器·前端·nginx
青铜发条2 小时前
【python】python进阶——网络编程
运维·服务器·网络
勇闯逆流河2 小时前
【Linux】Linux常用指令合集
linux·运维·服务器
熙客3 小时前
创建阿里云ECS实例操作(免费试用版)
服务器·阿里云·云计算
会飞的土拨鼠呀4 小时前
Linux负载如何判断服务器的压力
linux·服务器·php
斯普信专业组4 小时前
多输入(input)多输出(output)验证
运维·服务器·网络·fluent-bit
TimberWill4 小时前
idea、服务器、数据库环境时区不一致问题
服务器·数据库·intellij-idea