如何在Go中读取二进制文件

我对Go完全陌生,我正在尝试读取一个二进制文件,一次读取一个字节或几个字节。该文档并没有多大帮助,我找不到任何教程或简单示例(顺便说一句,Google如何给他们的语言提供这样一个难以理解的名称?)。基本上,我如何打开文件,然后将一些字节读入缓冲区?有什么建议吗?


杨魅力
浏览 238回答 3
3回答

红糖糍粑

例如,要计算文件中的零字节数:package mainimport (    "fmt"    "io"    "os")func main() {    f, err := os.Open("filename")    if err != nil {        fmt.Println(err)        return    }    defer f.Close()    data := make([]byte, 4096)    zeroes := 0    for {        data = data[:cap(data)]        n, err := f.Read(data)        if err != nil {            if err == io.EOF {                break            }            fmt.Println(err)            return        }        data = data[:n]        for _, b := range data {            if b == 0 {                zeroes++            }        }    }    fmt.Println("zeroes:", zeroes)}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go