[发明专利]基于灰度升级的二进制文件解析方法、装置、设备及介质有效
申请号: | 202210756625.5 | 申请日: | 2022-06-30 |
公开(公告)号: | CN114818656B | 公开(公告)日: | 2022-09-23 |
发明(设计)人: | 王义开;秦玮;何磊;宋江坤 | 申请(专利权)人: | 深圳华锐分布式技术股份有限公司;华锐分布式技术(长沙)有限公司 |
主分类号: | G06F40/205 | 分类号: | G06F40/205;G06F16/13;G06F16/16 |
代理公司: | 深圳市精英创新知识产权代理有限公司 44740 | 代理人: | 迟珊珊 |
地址: | 518000 广东省深圳市福田区梅林街*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 灰度 升级 二进制文件 解析 方法 装置 设备 介质 | ||
本发明涉及数据处理领域,提供一种基于灰度升级的二进制文件解析方法、装置、设备及介质,能够在执行灰度升级时,配置二进制文件的文件格式作为目标格式,以辅助进行文件解析,进一步根据目标格式解析目标文件的消息头,得到目标文件的行数据模式,根据行数据模式确定目标文件中每行数据的长度,以便根据不同的行数据模式有针对性的确定每行数据的长度,根据每行数据的长度确定每行数据的起始索引,利用旧版本程序根据每行数据的起始索引对目标文件进行解析,进而实现旧版本程序对灰度升级后新定义的二进制文件的有效解析,避免灰度升级后旧版本程序无法解析二进制文件及解析错误的问题出现。
技术领域
本发明涉及数据处理技术领域,尤其涉及一种基于灰度升级的二进制文件解析方法、装置、设备及介质。
背景技术
二进制文件作为一种结构紧凑的文件格式,能够最大化程度的缩减文件本身大小,但与此同时也会损失文件自解析能力和可读性。
现有技术中使用二进制文件格式无法支持灰度升级。由于灰度升级后文件格式会有所变更,因此采用旧版本程序解析新的二进制文件将会出现索引错乱。
但是,在系统复杂度越来越高、系统稳定性越来越重要的大背景下,灰度升级已经成为了降低升级风险的重要举措,并且为了最小化地完成灰度升级,除了要求新版本兼容旧版本文件外,还需要提供旧版本解析新文件的能力,因此,如何在灰度升级时利用二进制文件在新旧版本程序内都正常交互成为了亟待解决的问题,尤其是如何利用旧版本程序对二进制文件进行解析尤为重要。
发明内容
鉴于以上内容,有必要提供一种基于灰度升级的二进制文件解析方法、装置、设备及介质,旨在解决灰度升级时利用旧版本程序无法解析二进制文件的问题。
一种基于灰度升级的二进制文件解析方法,所述基于灰度升级的二进制文件解析方法包括:
在执行灰度升级时,配置二进制文件的文件格式作为目标格式;
当检测到旧版本程序接收到任意二进制文件时,将所述任意二进制文件确定为目标文件;
根据所述目标格式解析所述目标文件的消息头,得到所述目标文件的行数据模式;
根据所述行数据模式确定所述目标文件中每行数据的长度;
根据每行数据的长度确定每行数据的起始索引;
利用所述旧版本程序根据每行数据的起始索引对所述目标文件进行解析。
根据本发明优选实施例,所述配置二进制文件的文件格式作为目标格式包括:
配置用于记录所述二进制文件的消息头大小的第一字段;
配置用于记录所述二进制文件的行数据模式的第二字段;
当所述行数据模式为固定行宽模式时,配置用于记录所述二进制文件的每行数据的固定行宽的第三字段,在所述二进制文件的消息头中添加所述第一字段、所述第二字段及所述第三字段;或者
当所述行数据模式为非固定行宽模式时,在所述二进制文件的消息头中添加所述第一字段及所述第二字段,分别配置用于记录所述二进制文件的每行数据的行宽的每个第四字段,在所述二进制文件的每行数据的消息体的起始位置处对应添加每个第四字段。
根据本发明优选实施例,所述根据所述目标格式解析所述目标文件的消息头,得到所述目标文件的行数据模式包括:
根据所述目标格式从所述目标文件的消息头中读取所述第二字段;
根据所述第二字段的数据内容确定所述目标文件的行数据模式。
根据本发明优选实施例,所述根据所述行数据模式确定所述目标文件中每行数据的长度包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳华锐分布式技术股份有限公司;华锐分布式技术(长沙)有限公司,未经深圳华锐分布式技术股份有限公司;华锐分布式技术(长沙)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210756625.5/2.html,转载请声明来源钻瓜专利网。