您当前的位置: 首页 > 

苍狼王unity学院

暂无认证

  • 1浏览

    0关注

    305博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

利用TCP协议实现服务端与客户端的通信09_02在服务端存储和解析数据(粘包和分包及解决方案)

苍狼王unity学院 发布时间:2019-08-14 19:46:55 ,浏览量:1

1、方法说明 服务器项目下新建类message,

/// 
/// 用来存储和解析客户端发送过来的数据
/// 
namespace TCP服务器端
{
    class Message
    {
        private byte[] data = new byte[1024];//用来存储现在的数据,需要足够大
        private int startIndex = 0;//当前data字节数组的大小

        public void AddCount(int count)//AddCount用来每次将数据放入data数组后对startindex值进行更新
        {
            startIndex += count;
        }
        public byte[] Data
        {
            get { return data; }
        }
        public int StartIndex
        {
            get { return startIndex; }
        }
        
        public int RemainSize//data数组剩余的存储空间大小
        {
            get { return data.Length - startIndex; }
        }
        ///  
        ///ReadMessage()方法逻辑思路如下:首先判断当前存取数据长度是否大于4字节,如果小于等于四字节则直接返回;
        /// 然后获取data数组中的数据所存储的字节长度为多少,
        /// 之后通过判断条件判断当前已存储数据长度减去四个字节(这四个字节用作了存储数据已使用长度信息)是否大于等于count值,
        /// 即读
关注
打赏
1665389160
查看更多评论
立即登录/注册

微信扫码登录

0.0383s