栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

C#通过TCP接收结构后反序列化结构

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C#通过TCP接收结构后反序列化结构

您应该实现适当的 length-prefixing
,而不是用字符串来表示您的数据包长度,然后减去该字符串的长度来知道从哪里开始读取。长度前缀与数据头结合使用将使您能够根据数据包的大小读取每个数据包,然后数据头将帮助您确定如何处理数据。

普通的长度前缀为您发送的每个“数据包”添加一个固定的报头。要创建此标头,您需要将整数(数据的长度)转换为字节,这将导致4个字节,然后在其后添加数据标头以及数据包的其余部分(即您要发送的数据)

这将创建以下数据包结构:

[Length (4 bytes)][Header (1 byte)][Data (x byte(s))]

读取数据包非常简单:

  1. 读取前4个字节(

    Length
    ),将其转换并将其分配给整数变量。

  2. 读取下一个字节(数据头)并将其放入变量中。

  3. x
    将字节读取到字节数组(其中
    x
    是您在步骤1中声明的整数)。

  4. 使用步骤2中的数据标头确定如何处理数据(步骤3中的字节数组)。

我之前的答案
之一中,您可以看到我上面刚刚解释的示例。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/398918.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号