首页 > 其他分享 >go语言中如何把数字转换成字节切片并在网络中传输

go语言中如何把数字转换成字节切片并在网络中传输

时间:2023-04-19 10:00:12浏览次数:40  
标签:转换成 pkgLen binary 切片 go 字节 数字

客户端:

先把数字转换成uint32类型:

var pkgLen = uint32(len(data))

再定义一个字节切片:

var buf = make([]byte, 4)

最后通过encoding.binary包中的方法,把无符号数字装载到字节切片中:

binary.BigEndian.PutUint32(buf[0:4], pkgLen)

这样就可以在网络中发送数字了:

conn.Write(buf)

服务端:

解析的时候

//读取数据
conn.Read(buffer[:4])

//把读取到的字节切片转换成无符号的32位整数
len32 := binary.BigEndian.Uint32(buffer[0:4])

//把32位无符号数字转换成整数
pkgLen = int(len32)

 

标签:转换成,pkgLen,binary,切片,go,字节,数字
From: https://www.cnblogs.com/nizuimeiabc1/p/17332228.html

相关文章

  • 在Go语言中,如何优化内存使用效率?
    在Go语言中,可以通过以下几种方式来优化内存使用效率:避免使用过多的内存尽可能地避免使用过多的内存是最有效的内存优化方法之一。在编写代码时,应该尽可能地避免使用全局变量和大量的临时变量。同时,可以使用常量、静态变量和缓存等方式来避免频繁地分配和释放内存。及时释放不......
  • django查询一周内的数据,一月内的数据,一年内的数据
    首先是当前时间的确定,对于年月日,orm模型都有对应的方法直接查询,周是没有方法直接查询的,我是没有找到这个方法,只能间接的查询。cur_time=datetime.datetime.now()#如果数据库保存的是UTC时间,程序不会蹦但是会提示你这不是本地时间now_time_utc=datetime.datetime.utcnow......
  • Django框架模版渲染与过滤器使用
    前端模版使用过滤器,如时间格式化等'''都是在前端页面中使用'''#default 如果一个变量是false或者为空,使用给定的默认值。否则,使用变量的值。{{value|default:"nothing"}}#给value这个值设置一个默认值,如果value没有传值或者值为空的话就显示nothing#length 返回值的......
  • Django笔记二十四之数据库函数之比较和转换函数
    本文首发于公众号:Hunter后端原文链接:Django笔记二十四之数据库函数之比较和转换函数这一篇笔记开始介绍几种数据库函数,以下是几种函数及其作用Cast转换类型Coalesce优先取值Greatest返回较大值Nullif值相同返回None1、model准备这一篇笔记我们主要用到Author......
  • LeetCode:Search Algorithm
    LeetCode:SearchAlgorithm1\FirstuniquecharAlgorithmDesign利用字符数量的有限性,通过数组来映射(避免Hash_map的高复杂度)注意数组声明为intA[26]而不是charA[26];if(s=="")return''; intA[26]={0,0}; for(inti=0;i<s.length();i++){ A[s[i]-......
  • 编写你的第一个 Django 应用程序,第3部分
    本教程从教程2 停止的地方开始。我们是继续网络投票应用程序,并将专注于创建公众界面–“视图”。在我们的投票应用程序中,我们将有以下四个视图:问题“索引”页面–显示最新的几个问题。问题“详细信息”页面–显示问题文本,没有结果,但用表格投票。问题“结果”页面......
  • django4.0 项目集成 xadmin 后台管理
    Djangoxadmin是Django框架的一个第三方应用程序,它提供了许多基于Web的界面来管理您的Django应用程序。1.安装xadmin  pipinstallhttps://github.com/sshwsfc/xadmin/tarball/master 如果你的django版本过高,和我一样是使用的4.0,会出现不兼容等,多种报错。 请将下......
  • Cesium地形切片踩坑记
    网上找的4个工具用于地形切片1.terrain地形生成-ctb方式,也就是编译好的ctb版本,取消了gzip压缩2.terrain地形生成-gdal方式,使用的gdal2srtmtiles-demo.py3.terr2cesiumApp4.cesiumlab第一个软件存在的问题,海底地形异常,似乎是没考虑过地形有负值?效果如图第二个软件给的安装环......
  • Docker快速入门 三(dockerfile常用命令,dockerfile构建django项目,docker私有仓库,docker-
    目录Docker一、Dcokerfile常用命令二、Dockerfile构建Django项目三、Docker私有仓库1、简介2、镜像传到官方仓库3、镜像分层4、搭建私有仓库四、Docker-conpose1、Docker-conpose部署项目1、新建flask项目2、编写dockerfile3、编写docker-conpose的yml文件4、启动docker-compoes2......
  • CF 1360E-Polygon,1300,思维题
    CF1360E-Polygon如果一个1不是在最右边或最下边,则一定有一个1在他的紧邻着的下边或右边,否则不合法。太妙了。#include<iostream>usingnamespacestd;constintN=1e2+10;intT,n;chara[N][N];intmain(){cin>>T;while(T--){......