为了账号安全,请及时绑定邮箱和手机立即绑定

在 go 中通过套接字发送 int64 的正确方法

在 go 中通过套接字发送 int64 的正确方法

Go
浮云间 2021-08-16 20:15:52
我正在尝试通过 golang 中的 TCP 发送 int64,但是,我的接收器打印的数字与我发送的数字不同。完成此操作的正确方法是什么?//Buffer on both client and serverbuffer := make([]byte, 1024)//SenderfileInfo, error := os.Stat(fileName)if error != nil {    fmt.Println("Error opening file")}var fSize int = int(fileInfo.Size())connection.Write([]byte(string(fSize)))//Receiverconnection.Read(buffer)fileSize := new(big.Int).SetBytes(bytes.Trim(buffer, "\x00")).Int64()if err != nil {    fmt.Println("not a valid filesize")    fileSize = 0}
查看完整描述

3 回答

?
天涯尽头无女友

TA贡献1831条经验 获得超9个赞

您不能使用 string() 从 int 进行转换,您需要使用strconv包。

connection.Write([]byte(strconv.FormatInt(fileInfo.Size(), 10))


查看完整回答
反对 回复 2021-08-16
  • 3 回答
  • 0 关注
  • 244 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号