[发明专利]一种数据传输方法在审
申请号: | 202110887665.9 | 申请日: | 2021-08-03 |
公开(公告)号: | CN113726680A | 公开(公告)日: | 2021-11-30 |
发明(设计)人: | 陶虎刚;朱凌杉;王頠;张甲强;胡敏;张立业;谢军军;林海 | 申请(专利权)人: | 兰州兰石集团有限公司 |
主分类号: | H04L12/805 | 分类号: | H04L12/805;H04L12/801;H04L1/00 |
代理公司: | 成都弘毅天承知识产权代理有限公司 51230 | 代理人: | 戴立亮 |
地址: | 730000 甘肃*** | 国省代码: | 甘肃;62 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据传输 方法 | ||
1.一种数据传输方法,其特征在于,包括以下步骤;
S01:建立byte数组:根据需要传输的数据对象中各个属性数据类型,先计算得到序列化后byte数组长度,建立结果byte数组,然后逐一把属性转换为byte数组类型,并放入结果byte数组中;
S02:分包方法:将序列化后的byte进行分包,更便于网络传输,尤其是文件或视频传输数据较大时;
S03:设定每个包大小,根据需传输byte数组实际长度以及每个包大小,判断此数据是否需要分包传输,需要分包传输,根据包大小,将字节数组截取成设定包大小的多个字节数组,直到目标数组被分完,按照从前到后的顺序,封装包对象,并返回包对象List集合;
S04:和包方法:创建和包缓存集合,用于接受需要合包的数据判断收到包对象中的包总数,如果为1,说明当前包是完整的,直接接受,处理如果大于1,说明需要和包,和包过程,先判断包缓存中包个数和收到包对象中的包总数是否一致,如果一致,说明数据所有包都已收到,进行和包处理。
S05:和包处理:将缓存中所有包对象按照序号进行排序,然后逐一取出,拼接其字节数组,直到拼接完成,返回完整包。
2.根据权利要求1所述的一种数据传输方法,其特征在于,所述步骤S04中,用于接受需要合包的数据判断收到包对象中的包总数,如果为1,说明当前包是完整的,直接接受,然后直接进行解析、反序列化。
3.根据权利要求2所述的一种数据传输方法,其特征在于,所述反序列化的方法为,只需将序列化过程反过来从byte数组中获取相应属性对应位,去除相应属性对应的byte数组,根据属性的数据类型,进行转换即可。
4.根据权利要求1所述的一种数据传输方法,其特征在于,所述步骤S02中,根据需传输byte数组实际长度以及每个包大小,判断此数据是否需要分包传输,如果不需要分包传输,封装包对象直接返回。
5.根据权利要求1所述的一种数据传输方法,其特征在于,所述步骤S04中,判断包缓存中包个数和收到包对象中的包总数是否一致,如果不一致,包并未接受完,将包对象放入到包缓存列表内。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于兰州兰石集团有限公司,未经兰州兰石集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110887665.9/1.html,转载请声明来源钻瓜专利网。