CN114449061A - 一种可配置式的协议解析方法、装置、设备及存储介质 - Google Patents
一种可配置式的协议解析方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114449061A CN114449061A CN202111619967.4A CN202111619967A CN114449061A CN 114449061 A CN114449061 A CN 114449061A CN 202111619967 A CN202111619967 A CN 202111619967A CN 114449061 A CN114449061 A CN 114449061A
- Authority
- CN
- China
- Prior art keywords
- configuration file
- protocol
- configuration
- state
- software
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 36
- 238000004891 communication Methods 0.000 claims abstract description 54
- 238000000034 method Methods 0.000 claims description 41
- 239000002356 single layer Substances 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 7
- 239000010410 layer Substances 0.000 claims description 5
- 230000004048 modification Effects 0.000 abstract description 7
- 238000012986 modification Methods 0.000 abstract description 7
- 238000007405 data analysis Methods 0.000 abstract description 3
- 230000009471 action Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
本发明涉及一种可配置式的协议解析方法、装置、设备及存储介质,涉及通信数据解析技术领域,包括:获取输入数据以及通信协议;将所述通信协议转换成协议配置文件;利用预设的软件加载所述协议配置文件,并将所述协议配置文件存储在对象变量中,所述对象变量为所述软件的代码中的变量;根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据。本发明将所述通信协议转换成协议配置文件,使得所述协议配置文件能够根据修改而变化,达到不用修改所述预设的软件中的源代码只需修改所述协议配置文件就能够对输入数据进行解析从而得到输出数据,提高了对数据进行解析的工作效率。
Description
技术领域
本发明涉及通信数据解析技术领域,尤其涉及一种可配置式的协议解析方法、装置、设备及存储介质。
背景技术
当前通信数据解析,通常是针对每一条协议都单独编写相应的解析代码,通过判断语句来匹配数据相对应的协议。此时,针对不同的项目,或者项目的不同时期因协议发生了变更,解析软件都需重新修改源代码。
缺陷:不同协议中相同的内容的解析代码难以重用。例如两条协议,内容基本相同,但协议结构和组织有较大变化时,此时协议解析顺序有很大的差别,从而导致需要两段大致一样,但很难重用的代码。
缺陷:需频繁地更新软件。例如某条协议有一些相当小的改动(如增加说明等),完全和解析逻辑无关,但因为所有显示均是写在代码中,从而需要同步修改软件。
缺陷:因难以兼容不同格式的协议,所以不同的项目,不同的接口都分别有各自不同的解析软件。
发明内容
本发明提供了一种可配置式的协议解析方法、装置、设备及存储介质,以解决现有技术中对不同的项目或者项目的不同时期因协议发生了变更需重新修改解析软件中的源代码的问题。
为了解决上述问题,本发明采用以下技术方案:包括:
第一方面,本发明提供了一种可配置式的协议解析方法,
将所述通信协议转换成协议配置文件;
利用预设的软件加载所述协议配置文件,并将所述协议配置文件存储在对象变量中,所述对象变量为所述软件的代码中的变量;
根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据。
其进一步的技术方案为,所述将所述通信协议转换成配置文件,包括:
将所述通信协议进行拆分,得到多个标准模块;
将多个所述标准模块转换为预设格式的配置文件,得到多个第一配置文件;
将多个第一配置文件进行层次式组合,得到协议配置文件,所述协议配置文件为仅由多个所述第一配置文件进行单层次组合得到的,或由多个所述第一配置文件进行多层次组合得到的。
其进一步的技术方案为,所述标准模块包括输入参数,所述将多个所述标准模块转换为预设格式的配置文件,得到多个第一配置文件,包括:
将所述标准模块中的输入参数转换为预设格式的配置文件。
其进一步的技术方案为,所述第一配置文件包括所述第一配置文件的名称以及所述第一配置文件的专用解析接口,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的;
若是,根据所述第一配置文件的名称调用所述第一配置文件的专用解析接口;
根据所述第一配置文件的专用解析接口将所述软件与所述第一配置文件建立连接,并对所述输入数据进行解析,得到输出数据。
其进一步的技术方案为,所述第一配置文件包括所述第一配置文件的名称以及所述第一配置文件的专用解析接口,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的;
若否,遍历所述协议配置文件中的所有所述第一配置文件;
判断当前遍历的所述第一配置文件的顺序是否小于所有所述第一配置文件加起来的总数;
若当前遍历的所述第一配置文件的顺序小于所有所述第一配置文件加起来的总数,判断所述第一配置文件的状态是否为错误状态或完成状态;
若所述第一配置文件的状态不是错误状态或完成状态,根据所述第一配置文件的名称调用所述第一配置文件的专用解析接口;
根据所述第一配置文件的专用解析接口将所述软件与所述第一配置文件建立连接,并对所述输入数据进行解析,得到待输出数据。
其进一步的技术方案为,所述判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的之前,所述方法还包括:
判断所述第一配置文件的状态是否为错误状态或完成状态;
若否,继续判断所述第一配置文件的状态是否为初始化状态;
若所述第一配置文件的状态为初始化状态,将所述第一配置文件的状态切换为运行状态。
其进一步的技术方案为,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
若当前遍历的所述第一配置文件的顺序不小于所有所述第一配置文件加起来的总数,则将所述待输出数据进行输出,得到输出数据。
第二方面,本发明还提供了一种可配置式的协议解析装置,包括用于执行如第一方面所述方法的单元。
第三方面,本发明还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面所述的方法的步骤。
第四方面,本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的方法的步骤。
本发明实施例提供的上述技术方案与现有技术相比具有如下优点:
本发明实施例通过获取输入数据以及通信协议;将所述通信协议转换成协议配置文件;利用预设的软件加载所述协议配置文件,并将所述协议配置文件以协议类的形式存储在对象变量中,使得所述协议配置文件能够作为变量从而可根据修改而变化,所述协议配置文件为所述预设的软件中的源代码能够读懂的配置文件,达到不用修改所述预设的软件中的源代码只需修改所述协议配置文件就能够对输入数据进行解析从而得到输出数据,提高了对数据进行解析的工作效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的一种可配置式的协议解析方法的流程示意图;
图2为本发明实施例2提供的一种可配置式的协议解析装置结构框图;
图3为本发明实施例3提供的一种电子设备的结构示意图。
具体实施方式
为了更充分理解本发明的技术内容,下面结合具体实施例对本发明的技术方案进一步介绍和说明,但不局限于此。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
实施例1
参见图1,图1为本发明实施例1提供的一种可配置式的协议解析方法的流程示意图。该方法可应用于电子设备中,电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信,对此本发明不做具体限定。具体地,如图1所示,该方法包括以下步骤S101-S104。
S101,获取输入数据以及通信协议。
具体地,处理器获取输入数据以及通信协议,所述输入数据为需要解析的数据,所述通信协议为根据用户需求制定的协议。
S102,将所述通信协议转换成协议配置文件。
具体地,处理器接收用户指令后将所述通信协议转换成协议配置文件,所述协议配置文件为预设格式的配置文件,所述预设格式为根据用户需求设定,本发明实施例中用XML格式。
在一实施例中,所述将所述通信协议转换成配置文件,包括:
将所述通信协议进行拆分,得到多个标准模块;
具体地,处理器接收用户指令后将所述通信协议进行拆分,得到多个标准模块,所述通信协议可为不同格式的通信协议或为相同格式的通信协议。
将多个所述标准模块转换为预设格式的配置文件,得到多个第一配置文件;
具体地,处理器接收用户指令后将多个所述标准模块转换为预设格式的配置文件,得到多个第一配置文件。
将多个第一配置文件进行层次式组合,得到协议配置文件,所述协议配置文件为仅由多个所述第一配置文件进行单层次组合得到的,或由多个所述第一配置文件进行多层次组合得到的。
具体地,处理器接收用户指令后将多个第一配置文件进行层次式组合,得到协议配置文件,所述协议配置文件为仅由多个所述第一配置文件进行单层次组合得到的,或由多个所述第一配置文件进行多层次组合得到的。例如,某一个所述协议配置文件仅由多个所述第一配置文件并列组合而成,则为单层次组合;某一个所述协议配置文件是由多个所述第一配置文件经过多个组合步骤组合而成的配置文件(即多个所述第一配置文件之间既有并列关系又有包含关系),则为多层次组合,且除了单层次组合外的其它组合方式都为多层次组合。
例如,如表1-表4所示,表1为协议配置文件信息表;表2为表1中protocol_x的详细信息表;表3为表1及表2中inputs和outputs接口的详细信息表;表4为协议类FlxProtocol中包含的FlxPro_str结构的变量的字段定义信息表。
所述第一配置文件(本例中以及表中以unity命名)具体功能由程序代码实现,而若干个所述第一配置文件组在一起则形成一个协议组合(即协议配置文件,本例中以及表中以combine命名)
另外,combine不仅可以由unity组成,也可以由其他combine组成。即可以由unity和combine自由组合成为一个新的combine。所有combine均以配置文件的形式存储在解析软件的输入文件夹中,文件名称即为该combine的名称。
表1
名称 | 说明 |
type | 该组成部分类型,为unity或者combine |
name_value | 该组成部分名称 |
para | 调用参数 |
inputs | 输入接口 |
表2
表3
名称 | 说明 |
string inputcount | 输入接口数量 |
List<FlxPro_ioPort>list_input_io | 输入接口定义集 |
string setpara | 调用参数 |
string name | 组件名称 |
string type | 组件类型 |
int level | 组件嵌套层数 |
string dis_head | 解析显示字段:前缀 |
string dis_body | 解析显示字段:主体 |
string dis_tail | 解析显示字段:后缀 |
List<FlxProtocol>list_subPro | 本组件的组件集合(由此实现嵌套) |
List<FlxPro_ioPort>list_output_io | 输出接口定义集 |
FlxPro_STS status | 当前组件解析状态 |
ArrayList runCache | 当前组件解析结果缓存 |
FlxPro_ioData[]list_output_data | 当前组件输出数据集 |
表4
在一实施例中,所述标准模块包括输入参数,所述将多个所述标准模块转换为预设格式的配置文件,得到多个第一配置文件,包括:
将所述标准模块中的输入参数转换为预设格式的配置文件。
具体地,处理器接收用户指令后将所述标准模块中的输入参数转换为预设格式的配置文件。所述标准模块中的输入参数包括类型、名称、调用参数以及输入接口;调用参数用于提高所述第一配置文件的灵活性。
S103,利用预设的软件加载所述协议配置文件,并将所述协议配置文件存储在对象变量中。
具体地,处理器用预设的软件加载所述协议配置文件,并将所述协议配置文件存储在对象变量中,所述对象变量为所述软件的代码中的变量。具体存储方式是将所述协议配置文件以协议类FlxProtocol的形式存储在对象变量中,使得所述协议配置文件能够作为变量从而可根据修改而变化。所述预设的软件为用户编写设置的。
S104,根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据。
具体地,处理器根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据。
在一实施例中,所述第一配置文件包括所述第一配置文件的名称以及所述第一配置文件的专用解析接口,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的;
具体地,处理器接收用户指令后使软件判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的。
若是,根据所述第一配置文件的名称调用所述第一配置文件的专用解析接口;
具体地,当所述协议配置文件是仅由多个所述第一配置文件进行单层次组合得到的,处理器使软件根据所述第一配置文件的名称调用所述第一配置文件的专用解析接口。
根据所述第一配置文件的专用解析接口将所述软件与所述第一配置文件建立连接,并对所述输入数据进行解析,得到输出数据。
具体地,处理器使软件通过所述第一配置文件的专用解析接口与所述第一配置文件建立连接,所述第一配置文件的专用解析接口使得所述预设的软件能够根据所述第一配置文件对所述输入数据进行解析从而得到输出数据。
在一实施例中,所述第一配置文件包括所述第一配置文件的名称以及所述第一配置文件的专用解析接口,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的;
具体地,处理器接收用户指令后使软件判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的。
若否,遍历所述协议配置文件中的所有所述第一配置文件;
具体地,软件判定所述协议配置文件不是仅由多个所述第一配置文件进行单层次组合得到的,则遍历所述协议配置文件中的所有所述第一配置文件。
判断当前遍历的所述第一配置文件的顺序是否小于所有所述第一配置文件加起来的总数;
具体地,软件判断当前遍历的所述第一配置文件的顺序是否小于所有所述第一配置文件加起来的总数。所述遍历的第一配置文件的顺序是指对所有所述第一配置文件进行遍历时当前的第一配置文件的遍历顺序,例如:所有所述第一配置文件加起来的总数为10,则要对所有所述第一配置文件进行遍历的次数为10,当前遍历的所述第一配置文件为第5个被遍历的第一配置文件。
若当前遍历的所述第一配置文件的顺序小于所有所述第一配置文件加起来的总数,判断所述第一配置文件的状态是否为错误状态或完成状态;
具体地,若当前遍历的所述第一配置文件的顺序小于所有所述第一配置文件加起来的总数,软件继续判断所述第一配置文件的状态是否为错误状态或完成状态。所述错误状态指输入数据与所述第一配置文件不匹配,所述完成状态是指已利用所述第一配置文件对输入数据进行解析。
若所述第一配置文件的状态不是错误状态或完成状态,根据所述第一配置文件的名称调用所述第一配置文件的专用解析接口;
具体地,当所述第一配置文件的状态不是错误状态或完成状态,软件根据所述第一配置文件的名称调用所述第一配置文件的专用解析接口。
根据所述第一配置文件的专用解析接口将所述软件与所述第一配置文件建立连接,并对所述输入数据进行解析,得到待输出数据。
具体地,处理器使软件通过所述第一配置文件的专用解析接口与所述第一配置文件建立连接,所述第一配置文件的专用解析接口使得所述预设的软件能够根据所述第一配置文件对所述输入数据进行解析从而得到待输出数据。
在一实施例中,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
若当前遍历的所述第一配置文件的顺序不小于所有所述第一配置文件加起来的总数,则将所述待输出数据进行输出,得到输出数据。
具体地,当前遍历的所述第一配置文件的顺序不小于所有所述第一配置文件加起来的总数,则表示遍历完成,则将所述待输出数据进行输出,得到输出数据,从而完成对输入数据的解析。
在一实施例中,所述判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的之前,所述方法还包括:
判断所述第一配置文件的状态是否为错误状态或完成状态;
具体地,处理器接收用户指令后使软件判断所述第一配置文件的状态是否为错误状态或完成状态。
若否,继续判断所述第一配置文件的状态是否为初始化状态;
具体地,当所述第一配置文件的状态不为错误状态或完成状态时,处理器接收用户指令后使软件继续判断所述第一配置文件的状态是否为初始化状态;所述初始化状态指所述第一配置文件与输入数据匹配且未用于解析数据。
若所述第一配置文件的状态为初始化状态,将所述第一配置文件的状态切换为运行状态。
具体地,若所述第一配置文件的状态为初始化状态,处理器接收用户指令后使软件将所述第一配置文件的状态切换为运行状态;所述运行状态指所述第一配置文件正在被用于解析数据。
具体而言,本发明实施例通过获取输入数据以及通信协议;将所述通信协议转换成协议配置文件;利用预设的软件加载所述协议配置文件,并将所述协议配置文件以协议类的形式存储在对象变量中,使得所述协议配置文件能够作为变量从而可根据修改而变化,所述协议配置文件为所述预设的软件中的源代码能够读懂的配置文件,达到不用修改所述预设的软件中的源代码只需修改所述协议配置文件就能够对输入数据进行解析从而得到输出数据,提高了对数据进行解析的工作效率。
实施例2
如图2所示,本发明实施例还提供了一种可配置式的协议解析装置400,该可配置式的协议解析装置400包括第一获取单元401、第一转换单元402、第一加载单元403、第一解析单元404。
第一获取单元401,用于获取输入数据以及通信协议;
第一转换单元402,用于将所述通信协议转换成协议配置文件;
第一加载单元403,用于利用预设的软件加载所述协议配置文件,并将所述协议配置文件存储在对象变量中,所述对象变量为所述软件的代码中的变量;
第一解析单元404,用于根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据。
在一实施例中,所述将所述通信协议转换成配置文件,包括:
将所述通信协议进行拆分,得到多个标准模块;
将多个所述标准模块转换为预设格式的配置文件,得到多个第一配置文件;
将多个第一配置文件进行层次式组合,得到协议配置文件,所述协议配置文件为仅由多个所述第一配置文件进行单层次组合得到的,或由多个所述第一配置文件进行多层次组合得到的。
在一实施例中,所述标准模块包括输入参数,将多个所述标准模块转换为预设格式的配置文件,得到多个第一配置文件,包括:
将所述标准模块中的输入参数转换为预设格式的配置文件。
在一实施例中,所述第一配置文件包括所述第一配置文件的名称以及所述第一配置文件的专用解析接口,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的;
若是,根据所述第一配置文件的名称调用所述第一配置文件的专用解析接口;
根据所述第一配置文件的专用解析接口将所述软件与所述第一配置文件建立连接,并对所述输入数据进行解析,得到输出数据。
在一实施例中,所述第一配置文件包括所述第一配置文件的名称以及所述第一配置文件的专用解析接口,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的;
若否,遍历所述协议配置文件中的所有所述第一配置文件;
判断当前遍历的所述第一配置文件的顺序是否小于所有所述第一配置文件加起来的总数;
若当前遍历的所述第一配置文件的顺序小于所有所述第一配置文件加起来的总数,判断所述第一配置文件的状态是否为错误状态或完成状态;
若所述第一配置文件的状态不是错误状态或完成状态,根据所述第一配置文件的名称调用所述第一配置文件的专用解析接口;
根据所述第一配置文件的专用解析接口将所述软件与所述第一配置文件建立连接,并对所述输入数据进行解析,得到待输出数据。
在一实施例中,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
若当前遍历的所述第一配置文件的顺序不小于所有所述第一配置文件加起来的总数,则将所述待输出数据进行输出,得到输出数据。
在一实施例中,所述判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的之前,所述方法还包括:
判断所述第一配置文件的状态是否为错误状态或完成状态;
若否,继续判断所述第一配置文件的状态是否为初始化状态;
若所述第一配置文件的状态为初始化状态,将所述第一配置文件的状态切换为运行状态。
具体而言,本发明实施例通过获取输入数据以及通信协议;将所述通信协议转换成协议配置文件;利用预设的软件加载所述协议配置文件,并将所述协议配置文件以协议类的形式存储在对象变量中,使得所述协议配置文件能够作为变量从而可根据修改而变化,所述协议配置文件为所述预设的软件中的源代码能够读懂的配置文件,达到不用修改所述预设的软件中的源代码只需修改所述协议配置文件就能够对输入数据进行解析从而得到输出数据,提高了对数据进行解析的工作效率。
实施例3
参见图3,本发明实施例还提供了一种电子设备,包括处理器111、通信接口112、存储器113和通信总线114,其中,处理器111,通信接口112,存储器113通过通信总线114完成相互间的通信。
存储器113,用于存放计算机程序;
处理器111,用于执行存储器113上所存放的程序,实现实施例1提供的可配置式的协议解析方法。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器111执行时实现如实施例1提供的可配置式的协议解析方法的步骤。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所发明的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种可配置式的协议解析方法,其特征在于,包括:
获取输入数据以及通信协议;
将所述通信协议转换成协议配置文件;
利用预设的软件加载所述协议配置文件,并将所述协议配置文件存储在对象变量中,所述对象变量为所述软件的代码中的变量;
根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据。
2.根据权利要求1所述的可配置式的协议解析方法,其特征在于,所述将所述通信协议转换成配置文件,包括:
将所述通信协议进行拆分,得到多个标准模块;
将多个所述标准模块转换为预设格式的配置文件,得到多个第一配置文件;
将多个第一配置文件进行层次式组合,得到协议配置文件,所述协议配置文件为仅由多个所述第一配置文件进行单层次组合得到的,或由多个所述第一配置文件进行多层次组合得到的。
3.根据权利要求2所述的可配置式的协议解析方法,其特征在于,所述标准模块包括输入参数,所述将多个所述标准模块转换为预设格式的配置文件,得到多个第一配置文件,包括:
将所述标准模块中的输入参数转换为预设格式的配置文件。
4.根据权利要求2所述的可配置式的协议解析方法,其特征在于,所述第一配置文件包括所述第一配置文件的名称以及所述第一配置文件的专用解析接口,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的;
若是,根据所述第一配置文件的名称调用所述第一配置文件的专用解析接口;
根据所述第一配置文件的专用解析接口将所述软件与所述第一配置文件建立连接,并对所述输入数据进行解析,得到输出数据。
5.根据权利要求4所述的可配置式的协议解析方法,其特征在于,所述第一配置文件包括所述第一配置文件的名称以及所述第一配置文件的专用解析接口,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的;
若否,遍历所述协议配置文件中的所有所述第一配置文件;
判断当前遍历的所述第一配置文件的顺序是否小于所有所述第一配置文件加起来的总数;
若当前遍历的所述第一配置文件的顺序小于所有所述第一配置文件加起来的总数,判断所述第一配置文件的状态是否为错误状态或完成状态;
若所述第一配置文件的状态不是错误状态或完成状态,根据所述第一配置文件的名称调用所述第一配置文件的专用解析接口;
根据所述第一配置文件的专用解析接口将所述软件与所述第一配置文件建立连接,并对所述输入数据进行解析,得到待输出数据。
6.根据权利要求4所述的可配置式的协议解析方法,其特征在于,所述判断所述协议配置文件是否仅由多个所述第一配置文件进行单层次组合得到的之前,所述方法还包括:
判断所述第一配置文件的状态是否为错误状态或完成状态;
若否,继续判断所述第一配置文件的状态是否为初始化状态;
若所述第一配置文件的状态为初始化状态,将所述第一配置文件的状态切换为运行状态。
7.根据权利要求5所述的可配置式的协议解析方法,其特征在于,所述根据所述软件以及所述协议配置文件对所述输入数据进行解析,得到输出数据,包括:
若当前遍历的所述第一配置文件的顺序不小于所有所述第一配置文件加起来的总数,则将所述待输出数据进行输出,得到输出数据。
8.一种可配置式的协议解析装置,其特征在于,包括用于执行如权利要求1-7任一项所述方法的单元。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111619967.4A CN114449061A (zh) | 2021-12-23 | 2021-12-23 | 一种可配置式的协议解析方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111619967.4A CN114449061A (zh) | 2021-12-23 | 2021-12-23 | 一种可配置式的协议解析方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114449061A true CN114449061A (zh) | 2022-05-06 |
Family
ID=81365148
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111619967.4A Pending CN114449061A (zh) | 2021-12-23 | 2021-12-23 | 一种可配置式的协议解析方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114449061A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114900570A (zh) * | 2022-07-13 | 2022-08-12 | 江西联创精密机电有限公司 | 一种标准化数据采集传输方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015158064A1 (zh) * | 2014-04-18 | 2015-10-22 | 中兴通讯股份有限公司 | 一种通信协议转换方法及装置、存储介质 |
CN108141464A (zh) * | 2017-03-15 | 2018-06-08 | 深圳中兴力维技术有限公司 | 一种通信协议解析代码自动生成方法及系统 |
CN110324325A (zh) * | 2019-06-19 | 2019-10-11 | 中国科学院西安光学精密机械研究所 | 一种基于配置文件的卫星地面系统通信协议实现方法 |
CN112887309A (zh) * | 2021-01-26 | 2021-06-01 | 深圳市宏电技术股份有限公司 | 一种工业协议解析系统 |
-
2021
- 2021-12-23 CN CN202111619967.4A patent/CN114449061A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015158064A1 (zh) * | 2014-04-18 | 2015-10-22 | 中兴通讯股份有限公司 | 一种通信协议转换方法及装置、存储介质 |
CN108141464A (zh) * | 2017-03-15 | 2018-06-08 | 深圳中兴力维技术有限公司 | 一种通信协议解析代码自动生成方法及系统 |
CN110324325A (zh) * | 2019-06-19 | 2019-10-11 | 中国科学院西安光学精密机械研究所 | 一种基于配置文件的卫星地面系统通信协议实现方法 |
CN112887309A (zh) * | 2021-01-26 | 2021-06-01 | 深圳市宏电技术股份有限公司 | 一种工业协议解析系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114900570A (zh) * | 2022-07-13 | 2022-08-12 | 江西联创精密机电有限公司 | 一种标准化数据采集传输方法及系统 |
CN114900570B (zh) * | 2022-07-13 | 2022-10-18 | 江西联创精密机电有限公司 | 一种标准化数据采集传输方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019095968A1 (zh) | 一种动态加载方法、目标文件的制作方法及装置 | |
CN111399853B (zh) | 机器学习模型与自定义算子的模板化部署方法 | |
CN111970267B (zh) | 一种数据协议转换方法、装置、电子设备及存储介质 | |
CN103744891A (zh) | 一种数据查询方法和系统 | |
US9043757B2 (en) | Identifying differences between source codes of different versions of a software when each source code is organized using incorporated files | |
CN104035754A (zh) | 一种基于xml的自定义代码生成方法及生成器 | |
CN111400387B (zh) | 导入导出数据的转换方法、装置、终端设备及存储介质 | |
CN104360865A (zh) | 一种序列化方法、反序列化方法及相关设备 | |
CN108829884B (zh) | 数据映射方法及装置 | |
CN103294652A (zh) | 一种数据转换方法及系统 | |
CN107566090B (zh) | 一种定长/变长的文本报文处理方法及装置 | |
CN114449061A (zh) | 一种可配置式的协议解析方法、装置、设备及存储介质 | |
CN110941655B (zh) | 一种数据格式转换方法及装置 | |
CN101196812A (zh) | 构件化软件系统实现脚本语言调用多输出参数接口的方法 | |
CN112000690B (zh) | 解析结构化操作语句的方法和装置 | |
CN102722367B (zh) | 一种数据处理的方法、处理器及终端 | |
CN110704099B (zh) | 联盟链的构建方法、装置和电子设备 | |
CN111142871A (zh) | 一种前端页面开发系统、方法、设备、介质 | |
CN109213477B (zh) | 一种实现软件线路差异自动对比的方法和装置 | |
CN111125216A (zh) | 数据导入Phoenix的方法及装置 | |
CN112579312A (zh) | 参数映射方法及装置、存储介质、接口调用平台、服务系统 | |
CN114090135B (zh) | 具有纠错功能且支持跨平台调用组件的方法和装置 | |
CN115114321A (zh) | 一种动态查询方法及系统 | |
CN111177234A (zh) | 一种文档型数据文件快速处理装置及方法 | |
CN114579141A (zh) | require框架转化为VUE框架的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |