📅  最后修改于: 2023-12-03 15:01:02.390000             🧑  作者: Mango
Golang 作为一门现代化的编程语言,提供了许多简捷易懂的文件读写方法。在本文中,我们将会介绍如何使用 Golang 读取文件。
在学习本文内容前,需具备以下基础知识:
Golang 提供了 io/ioutil
包,使用该包可简单快捷地读取文件内容。
下面是一个简单的例子:
package main
import (
"fmt"
"io/ioutil"
)
func main() {
content, err := ioutil.ReadFile("./test.txt")
if err != nil {
fmt.Println(err)
}
fmt.Println(string(content))
}
在上面的例子中,我们引入了 io/ioutil
包并使用该包的 ReadFile
函数读取了 test.txt
文件的内容。如果读取失败,将会打印错误信息;否则打印文件内容。
注意:
ReadFile
函数需要传入文件路径参数(./test.txt
)ReadFile
函数会返回文件的完整内容([]byte
类型)[]byte
类型转换为字符串类型(string(content)
)如果我们需要逐行读取文件内容,可以使用 bufio
包提供的 NewScanner
方法实现。
下面是一个例子:
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
file, err := os.Open("./test.txt")
if err != nil {
fmt.Println(err)
}
defer file.Close()
scanner := bufio.NewScanner(file)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
if err := scanner.Err(); err != nil {
fmt.Println(err)
}
}
在上面的例子中,我们打开了一个文件并使用 bufio
包的 NewScanner
方法创建了一个扫描器,然后使用 scanner.Scan()
方法逐行扫描该文件内容并输出。
Golang 提供了许多文件操作的方法,上文所述只是其中的一部分。如果你想了解更多关于 Golang 文件读写的内容,可以查看官方文档。
我们可以看到 Golang 从语言实现上深度支持并发、内存安全等特性,使得其在简单易用、高并发部分领域都是很有竞争力的语言之一。