本文介绍了如何在 Go 编程中将 []byte 转换为 int的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要通过 TCP 创建一个客户端-服务器示例.在客户端,我读取了 2 个数字并将它们发送到服务器.我面临的问题是我无法从 []byte
转换为 int
,因为通信只接受 []byte
类型的数据.
I need to create a client-server example over TCP. In the client side I read 2 numbers and I send them to the server. The problem I faced is that I can't convert from []byte
to int
, because the communication accept only data of type []byte
.
有什么方法可以将 []byte
转换为 int
或者我可以将 int
发送到服务器?
Is there any way to convert []byte
to int
or I can send int
to the server?
一些示例代码将不胜感激.
Some sample code will be really appreciated.
谢谢.
推荐答案
(转贴 这个答案)
您可以使用 encoding/binary 的 ByteOrder 为 16、32、64位类型
You can use encoding/binary's ByteOrder to do this for 16, 32, 64 bit types
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)
}
这篇关于如何在 Go 编程中将 []byte 转换为 int的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!