unity网络实战开发(丛林战争)-前期知识准备(009-在客户端发送数据的时候加上数据长度)
程序员文章站
2022-04-03 16:46:05
...
使用工具:VS2015
使用语言:c#
作者:Gemini_xujian
参考:siki老师-《丛林战争》****
继上一篇文章内容,这节课讲解一下在客户端发送数据时候加上数据长度。
先上代码:
客户端:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Tcp客户端
{
class Message
{
public static byte[] GetBytes(string data)
{
byte[] dataBytes = Encoding.UTF8.GetBytes(data);//将数据转换成byte数组
int dataLength = dataBytes.Length;//获得数据byte数组的长度
byte[] lengthBytes = BitConverter.GetBytes(dataLength);//将长度转换成4个字节的byte数组
byte[] newBytes = lengthBytes.Concat(dataBytes).ToArray();//将长度数组和数据数组进行连接
return newBytes;
}
}
}
上面的代码是在客户端的项目下新建了一个名为message的类,这个类目前只有一个功能方法,这个方法的作用就是将发送的数据添加上数据信息的长度,具体在每一行代码都进行了注释,前文中讲到需要将保存数据长度信息的数据用4个字节来表示,这里使用的方法时BitCoverter.GetBytes(),通过这个函数即可实现转换。 上一篇: 燕惠王派出使者质问乐毅,他是怎么回信的?
下一篇: Unity如何获得场景的根节点