Golang文件操作

写文件

  os模块可以创建文件,使用fmt可以写入文件。如以下例子:

复制代码
package main

import (
	"fmt"
	"os"
)

func main() {
	// 学习 golang的文件操作
	file, err := os.Create("test.txt")
	if err != nil {
		fmt.Println("文件创建失败", err)
	}
	_, err = fmt.Fprintln(file, "hello world")
	if err != nil {
		return
	}
	err = file.Close()
	if err != nil {
		fmt.Println("文件关闭失败", err)
	}
}

读文件

读文件可以用bufio模块,利用Scanner进行逐行读取。如以下例子:

go 复制代码
package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	// WriteFile()
	file, err := os.Open("test.txt")
	if err != nil {
		fmt.Println(err) // 文件打开失败
	}
	defer func(file *os.File) {
		err := file.Close()
		if err != nil {
			fmt.Println(err)
		}
	}(file)
	scanner := bufio.NewScanner(file)
	for scanner.Scan() {
		fmt.Println(scanner.Text())
	}
	if err := scanner.Err(); err != nil {
		fmt.Println(err) // 读取文件失败
	}
}
相关推荐
我是你们的明哥1 分钟前
kafka如何实现exactly once
后端
invicinble3 分钟前
java集合类(二)--map
java·开发语言·python
王中阳Go4 分钟前
全面解析Go泛型:从1.18到最新版本的演进与实践
后端·面试·go
oak隔壁找我4 分钟前
Java ThreadLocal详解:原理、应用与最佳实践
后端
代码扳手4 分钟前
“老板,我的接口性能还能再快一倍!” — Go微服务gRPC升级实战
后端·go
woniu_maggie4 分钟前
SAP暂估科目自动清账
后端
sali-tec4 分钟前
C# 基于halcon的视觉工作流-章71 深度学习-预处理OCR
开发语言·人工智能·深度学习·数码相机·算法·计算机视觉·ocr
rannn_1115 分钟前
【SQL题解】力扣高频 SQL 50题|DAY4
数据库·后端·sql·leetcode·题解
isyuah6 分钟前
Miko v0.7 发布:我写的一个 Rust Web 框架,虽然还是个玩具
后端·rust
宠..6 分钟前
QPlainText方法大全
开发语言·qt