Golang numbers and []byte convert each other


package main

import (
    "fmt"
    "bytes"
    "encoding/binary"
)

func main()  {

    var i1 int64  = 65535

    buf := bytes.NewBuffer(make([]byte, 0))
    fmt.Println(buf.Bytes())

    // 网络字节序为大端字节序
    binary.Write(buf, binary.BigEndian, i1)

    fmt.Println(buf.Bytes())    // [0 0 0 0 0 0 255 255]

    var i2 int64
    binary.Read(buf, binary.BigEndian, &i2)
    fmt.Println(i2)    // 65535

}

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324954372&siteId=291194637