Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk membaca dan menulis fail binari menggunakan Golang?

Bagaimana untuk membaca dan menulis fail binari menggunakan Golang?

WBOY
WBOYasal
2024-06-03 13:14:581084semak imbas

如何使用 Golang 读写二进制文件?

Bagaimana untuk membaca dan menulis fail binari menggunakan Golang?

Baca fail binari

package main

import (
  "fmt"
  "os"
)

func main() {
  // 打开一个二进制文件
  file, err := os.Open("myfile.bin")
  if err != nil {
    fmt.Println("Error opening file:", err)
    return
  }
  defer file.Close()   // 确保文件在函数返回后关闭

  // 读取文件内容到一个字节切片
  data := make([]byte, 1024)  // 缓冲区大小可以根据需要调整
  n, err := file.Read(data)
  if err != nil {
    fmt.Println("Error reading file:", err)
    return
  }

  // 处理读取到的字节
  for i := 0; i < n; i++ {
    fmt.Printf("%02x ", data[i])  // 以十六进制打印字节
  }
  fmt.Println()
}

Tulis fail binari

package main

import (
  "fmt"
  "os"
)

func main() {
  // 打开一个二进制文件,进行写操作
  file, err := os.OpenFile("myfile.bin", os.O_WRONLY|os.O_CREATE, 0644)
  if err != nil {
    fmt.Println("Error opening file:", err)
    return
  }
  defer file.Close()  // 确保文件在函数返回后关闭

  // 写入数据到文件
  data := []byte{0x01, 0x02, 0x03, 0x04}
  n, err := file.Write(data)
  if err != nil {
    fmt.Println("Error writing file:", err)
    return
  }

  // 打印写入的字节数
  fmt.Printf("Wrote %d bytes to file\n", n)
}

Atas ialah kandungan terperinci Bagaimana untuk membaca dan menulis fail binari menggunakan Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn