unity网络实战开发(丛林战争)-前期知识准备(009-在客户端发送数据的时候加上数据长度)

使用工具:VS2015

使用语言:c#

作者:Gemini_xujian

继上一篇文章内容,这节课讲解一下在客户端发送数据时候加上数据长度。

先上代码:

客户端:

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(),通过这个函数即可实现转换。

猜你喜欢

转载自blog.csdn.net/gemini_xujian/article/details/79580390
今日推荐