Golang中怎么处理文件读写操作

2024-04-02

在Golang中处理文件读写操作通常使用os包和io/ioutil包。下面是一些常见的文件读写操作示例:

  1. 读取文件内容:
package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    data, err := ioutil.ReadFile("file.txt")
    if err != nil {
        fmt.Println("Error reading file:", err)
        return
    }

    fmt.Println("File content:", string(data))
}
  1. 写入文件内容:
package main

import (
    "io/ioutil"
)

func main() {
    data := []byte("Hello, world!")
    err := ioutil.WriteFile("file.txt", data, 0644)
    if err != nil {
        fmt.Println("Error writing file:", err)
        return
    }

    fmt.Println("File written successfully")
}
  1. 使用os包进行更灵活的文件读写操作:
package main

import (
    "fmt"
    "os"
)

func main() {
    file, err := os.Open("file.txt")
    if err != nil {
        fmt.Println("Error opening file:", err)
        return
    }
    defer file.Close()

    fileInfo, err := file.Stat()
    if err != nil {
        fmt.Println("Error getting file info:", err)
        return
    }

    fileContent := make([]byte, fileInfo.Size())
    _, err = file.Read(fileContent)
    if err != nil {
        fmt.Println("Error reading file:", err)
        return
    }

    fmt.Println("File content:", string(fileContent))
}

以上是一些基本的文件读写操作示例,实际应用中可以根据需求选择适合的方式进行文件处理。