首页 > 文章列表 > 如何编写 Golang 文件读写函数?

如何编写 Golang 文件读写函数?

341 2024-07-16

Go 语言通过 I/O 库高效进行文件读写。要读文件,使用 ReadFile 返回字节数组;写文件则使用 WriteFile 写入字节数组。此外,Go 还支持其他 I/O 操作,如:打开文件、关闭文件、读取文件信息和创建目录。

如何编写 Golang 文件读写函数?

如何编写 Go 文件读写函数

Go 语言提供了广泛的 I/O 库,用于高效地与文件进行读写操作。本文将介绍如何编写用于文件读写的 Go 函数,包括实战案例。

读文件

以下函数从给定的文件读取内容并返回字节数组:

func readFile(filename string) ([]byte, error) {
    data, err := ioutil.ReadFile(filename)
    if err != nil {
        return nil, err
    }
    return data, nil
}

实战案例:

data, err := readFile("data.txt")
if err != nil {
    log.Fatalf("Failed to read file: %v", err)
}
fmt.Println(string(data))

写文件

以下函数将字节数组写入给定的文件:

func writeFile(filename string, data []byte) error {
    err := ioutil.WriteFile(filename, data, 0644)
    if err != nil {
        return err
    }
    return nil
}

实战案例:

data := []byte("Hello, world!")
err := writeFile("hello.txt", data)
if err != nil {
    log.Fatalf("Failed to write file: %v", err)
}

其他 I/O 操作

除了读取和写入操作外,Go 还提供了其他 I/O 操作,例如:

  • 打开文件:f, err := os.Open("filename.txt")
  • 关闭文件:f.Close()
  • 读取文件信息:fi, err := os.Stat("filename.txt")
  • 创建目录:err := os.Mkdir("my_directory", 0755)