我需要通过TCP创建一个客户端-服务器示例。在客户端,我读取了2个数字,然后将它们发送到服务器。我面临的问题是我无法从[]byte转换为int,因为通信仅接受[]byte类型的数据。

有什么方法可以将[]byte转换为int,还是可以将int发送到服务器?

一些示例代码将不胜感激。

谢谢。

最佳答案

(重新发布this answer)

您可以使用编码/二进制的ByteOrder对16、32、64位类型执行此操作

Play

package main

import "fmt"
import "encoding/binary"

func main() {
    var mySlice = []byte{244, 244, 244, 244, 244, 244, 244, 244}
    data := binary.BigEndian.Uint64(mySlice)
    fmt.Println(data)
}

09-06 03:37