【技术实现步骤摘要】
一种字节流数据转换方法、装置、设备及存储介质
[0001]本申请实施例涉及计算机
,尤其涉及一种字节流数据转换方法、装置、设备及存储介质。
技术介绍
[0002]在软件程序开发中经常需要将服务端下发的字节流数据包转换为业务模型类,目前对字节流数据包的转换一般是采用手动编码的方式。传统的手动编码方式在将字节流数据包转换到模型时,需要开发人员依次根据字节流数据包中各个类型的属性的数据类型大小,从字节流数据包中读取对应长度的字节流数据,再将字节流数据的值赋值到模型类中。但是这种手动编码的方式代码量较大,编码工作量较大,并且容易出现编码错误的情况。
技术实现思路
[0003]本申请实施例提供一种字节流数据转换方法、装置、设备及存储介质,以解决现有技术中手动编码的方式代码量较大,编码工作量较大,容易出现编码错误的情况,提高字节流数据转换的转换效率和转换准确性。
[0004]在第一方面,本申请实施例提供了一种字节流数据转换方法,包括:
[0005]获取字节流数据包的第一类属性列表,遍历所述第一类属性 ...
【技术保护点】
【技术特征摘要】
1.一种字节流数据转换方法,其特征在于,包括:获取字节流数据包的第一类属性列表,遍历所述第一类属性列表,确定所述第一类属性列表所包含的第一属性;根据所述第一属性设置第一模型所包含的第二属性;确定各个所述第一属性对应的第一长度信息;根据所述第一长度信息,从所述字节流数据包中读取各个所述第一属性对应长度的第一字节数据,并将所述第一字节数据对应的数值赋值给对应的所述第二属性。2.根据权利要求1所述的字节流数据转换方法,其特征在于,所述确定各个所述第一属性对应的第一长度信息,包括以下至少一种:在所述第一属性为数字类型时,通过内存布局的方式获取所述第一属性对应的第一长度信息;在所述第一属性为内置类型时,根据所述第一属性对应的数据长度和标识长度确定所述第一属性对应的第一长度信息;在所述第一属性为自定义类型时,确定所述第一属性所包含的数据类型对应的第一数据长度,并根据所述第一数据长度确定所述第一属性对应的第一长度信息,所述自定义类型包括数字类型和内置类型中的一种或多种的组合;在所述第一属性为集合类型时,确定所述第一属性所包含的数据类型对应的第二数据长度,并根据所述第二数据长度确定所述第一属性对应的第一长度信息,所述集合类型包括数字类型、内置类型和自定义类型中的一种或多种的组合。3.根据权利要求1所述的字节流数据转换方法,其特征在于,所述根据所述第一字节数据确定各个所述第二属性的数值,包括:在所述第一属性为数字类型或内置类型时,将所述第一字节数据对应的第一数值赋值给对应的所述第二属性;在所述第一属性为自定义类型或集合类型时,遍历所述第一属性所包含的数据类型对应的第二数值,并依次将所述第二数值赋值给所述第二属性对应的数据类型。4.根据权利要求1所述的字节流数据转换方法,其特征在于,所述确定各个所述第一属性对应的第一长度信息之后,还包括:根据所述第一长度信息,在所述第一模型中为对应的所述第二属性分配内存空间,用于存储所述第一字节数据对应的数值。5.一种字节流数据转换装置,其特征在于,包括第一属性获取模块、第一模型配置模块、第一长度获取模块和第一数据转换模块,其中:所述第一属性获取模块,用于获取字节流数据包的第一类属性列表,遍历所述第一类属性列表,确定所述第一类属性列表所包含的第一属性;所述第一模型配置模块,用于根据所述第一属性设置第一模型所包含的第二属性;所述第一长度获取模块,用于确定各个所述第一属性对应的第一长度信息;所述第一数据转换模块,用于根据所述第一长度信息,从所述字节流数据包中读取各个所述第一属性对应长度的第一字节数据,并将所述第一字节数据对应的数值赋值给对应的所述第二属性。6.一种字节流数据转换方法,其特征在于,包括:
获取第二模型的第二类属性列表,遍历所述第二类属性列表,确定所述第二类属性列表所包含的第...
【专利技术属性】
技术研发人员:邹泽龙,
申请(专利权)人:百果园技术新加坡有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。