首页 / 专利库 / 电脑编程 / 文本编辑器 / 一种基于文件映射的数据处理方法、装置及设备

一种基于文件映射的数据处理方法、装置及设备

阅读:868发布:2020-05-13

专利汇可以提供一种基于文件映射的数据处理方法、装置及设备专利检索,专利查询,专利分析的服务。并且本 发明 公开一种基于文件映射的 数据处理 方法、装置及设备。基于文件映射的数据处理方法,包括步骤:配置协议文件模板,将第一格式数据通过协议文件模板转换为第二格式数据。本发明通过配置CSV文件定义如何在二进制格式数据和JSON格式数据之间相互转换的方法,可通过不同的CSV配置方式决定转换内容,针对不同的二进制格式数据协议,无需再编写特定转换程序,只需通过简单的CSV配置则可转换,极大提高功能复用性,降低开发成本。,下面是一种基于文件映射的数据处理方法、装置及设备专利的具体信息内容。

1.一种基于文件映射的数据处理方法,其特征在于,包括步骤:
配置协议文件模板;
将第一格式数据通过所述协议文件模板转换为第二格式数据。
2.根据权利要求1所述的基于文件映射的数据处理方法,其特征在于,所述配置协议文件模板,包括步骤:
S100、根据预设协议格式将所述第一格式数据划分层级及至少一个字段;所述字段包括字段名称、长度、大小端以及有无符号;
S101、创建入口CSV文件;
S102、判断每个所述字段的字段类型;
S103、将每个所述字段需直接转换成数值的所述长度标示为数字,并执行步骤S107;
S104、将每个所述字段需以多Byte展开的所述长度标示为第一符号,根据所述字段新建一个“字段名称.csv”的CSV文件,并返回步骤S102;
S105、将每个所述字段需以Bit展开的所述长度标示为第二符号,根据所述字段新建一个“字段名称.csv”的CSV文件;
S106、将以Bit展开的所述字段与Bit位置一一对应为Bit信息;
S107、将每个所述字段写入相应的所述CSV文件。
3.根据权利要求2所述的基于文件映射的数据处理方法,其特征在于,所述入口CSV文件是采用文本编辑器来创建。
4.根据权利要求2所述的基于文件映射的数据处理方法,其特征在于,所述第一格式数据为二进制格式数据,所述第二格式数据为JSON格式数据;所述将第一格式数据通过所述协议文件模板转换为第二格式数据,包括步骤:
S201、加载所述协议文件模板;
S202、输入所述第一格式数据;
S203、读取所述入口CSV文件的字段;
S204、判断识别所述字段的长度;
S205、如所述长度为数字,按照所述长度读取所述第一格式数据,并按照所述大小端和有无符号解码成数值数据,并执行步骤S209;
S206、如所述长度为第一符号,读取所述“字段名称.csv”的CSV文件,并返回步骤S204;
S207、如所述长度为第二符号,读取所述“字段名称.csv”的CSV文件,计算其长度并按照所述长度读取所述第一格式数据;
S208、按照所述字段解码为对应的Bit信息;
S209、转换输出所有的第二格式数据。
5.根据权利要求2所述的基于文件映射的数据处理方法,其特征在于,所述第一格式数据为JSON格式数据,所述第二格式数据为二进制格式数据;所述将第一格式数据通过所述协议文件模板转换为第二格式数据,包括步骤:
S201、加载所述协议文件模板;
S202、输入所述第一格式数据;
S203、读取所述入口CSV文件的字段;
S204、判断识别所述字段的长度;
S205、如所述长度为数字,按照所述长度读取所述第一格式数据,并按照所述大小端和有无符号将第一格式数据编码成第二格式数据,并执行步骤S209;
S206、如所述长度为第一符号,读取所述“字段名称.csv”的CSV文件,并返回步骤S204;
S207、如所述长度为第二符号,读取所述“字段名称.csv”的CSV文件,计算其长度并按照所述长度读取所述第一格式数据;
S208、按照所述字段将Bit信息编码成第二格式数据;
S209、转换输出所有的第二格式数据。
6.根据权利要求1-5任一项所述的基于文件映射的数据处理方法,其特征在于,所述第一符号为“*”,所述第二符号为“#”。
7.根据权利要求4所述的基于文件映射的数据处理方法,其特征在于,所述加载所述协议文件模板,具体为:将所述协议文件模板加载进入内存。
8.一种基于文件映射的数据处理装置,其特征在于,包括:
配置模,用于配置协议文件模板;
转换模块,用于将第一格式数据通过所述协议文件模板转换为第二格式数据。
9.一种基于文件映射的数据处理设备,其特征在于,所述基于文件映射的数据处理设备包括:
一个或多个处理器;
存储器,用于存储一个或多个计算机程序,一个或多个所述处理器用于执行所述存储器存储的一个或多个计算机程序,以使一个或多个所述处理器执行如权利要求1-7任一项所述的基于文件映射的数据处理方法。
10.一种计算机可读的存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被执行时实现权利要求1-7任一项所述的基于文件映射的数据处理方法。

说明书全文

一种基于文件映射的数据处理方法、装置及设备

技术领域

[0001] 本发明涉及数据处理技术领域,更具体地,涉及一种基于文件映射的数据处理方法、装置及设备。

背景技术

[0002] 嵌入式下位机通信数据中,普遍使用二进制数据结构,根据字节或二进制位标示对应的数据,且每个设备的数据定义不一致。在内存中是以二进制形式存储的,其他高级语言中也有类似的实现。
[0003] JSON(JavaScript Object Notation,JavaScript对象表示法),一种由道格拉斯·克罗克福特构想和设计、轻量级的数据交换格式,用来传输由属性值或者序列性的值组成的数据对象,采用完全独立于编程语言的文本格式来存储和表示数据,简洁和清晰的层次结构使得JSON成为理想的数据交换语言,以易于让人阅读和编写的文字为基础,同时也易于机器解析和生成,并有效地提升网络传输效率。
[0004] 中国专利CN107306256A一种基于字符串类型数据的通讯协议解析方法,只适用于字符串类型数据,对于极大部分是二进制数据格式的下位机则不适用;中国专利CN103197948B一种电智能设备通信规约脚本解析方法,只适用于电力智能设备,应用范围受限。

发明内容

[0005] 本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种基于文件映射的数据处理方法、装置及设备。
[0006] 本发明解决其技术问题所采用的技术方案是:根据本发明的第一方面,提供一种基于文件映射的数据处理方法,包括步骤:
[0007] 配置协议文件模板;
[0008] 将第一格式数据通过协议文件模板转换为第二格式数据。
[0009] 优选的,所述配置协议文件模板,包括步骤:
[0010] S100、根据预设协议格式将第一格式数据划分层级及至少一个字段;
[0011] S101、创建入口CSV文件;
[0012] S102、判断每个字段的字段类型;
[0013] S103、将每个字段需直接转换成数值的所述长度标示为数字,并执行步骤S107;
[0014] S104、将每个字段需以多Byte展开的长度标示为第一符号,根据字段新建一个“字段名称.csv”的CSV文件,并返回步骤S102;
[0015] S105、将每个字段需以Bit展开的长度标示为第二符号,根据字段新建一个“字段名称.csv”的CSV文件;
[0016] S106、将以Bit展开的字段和Bit位置一一对应为Bit信息;
[0017] S107、将每个字段写入相应的CSV文件。
[0018] 优选的,所述入口CSV文件是采用文本编辑器来创建。
[0019] 优选的,所述第一格式数据为二进制格式数据,所述第二格式数据为 JSON格式数据,所述将第一格式数据通过协议文件模板转换为第二格式数据,包括步骤:
[0020] S201、加载所述协议文件模板;
[0021] S202、输入第一格式数据;
[0022] S203、读取入口CSV文件的字段;
[0023] S204、判断识别字段的长度;
[0024] S205、如长度为数字,按照长度读取第一格式数据,并按照大小端和有无符号解码成数值数据,并执行步骤S209;
[0025] S206、如长度为第一符号,读取“字段名称.csv”的CSV文件,并返回步骤S204;
[0026] S207、如长度为第二符号,读取“字段名称.csv”的CSV文件,计算其长度并按照长度读取第一格式数据;
[0027] S208、按照字段解码为对应的Bit信息;
[0028] S209、转换输出所有的第二格式数据。
[0029] 优选的,所述第一格式数据为JSON格式数据,所述第二格式数据为二进制格式数据;所述将第一格式数据通过协议文件模板转换为第二格式数据,包括步骤:
[0030] S201、加载所述协议文件模板;
[0031] S202、输入第一格式数据;
[0032] S203、读取入口CSV文件的字段;
[0033] S204、判断识别字段的长度;
[0034] S205、如长度为数字,按照长度读取第一格式数据,并按照大小端和有无符号编码成数值数据,并执行步骤S209;
[0035] S206、如长度为第一符号,读取“字段名称.csv”的CSV文件,并返回步骤S204;
[0036] S207、如长度为第二符号,读取“字段名称.csv”的CSV文件,计算其长度并按照长度读取第一格式数据;
[0037] S208、按照字段将Bit信息编码成第二格式数据;
[0038] S209、转换输出所有的第二格式数据。
[0039] 优选的,所述第一符号为“*”,所述第二符号为“#”。
[0040] 优选的,所述加载所述协议文件模板,具体为:将协议文件模板加载进入内存。
[0041] 根据本发明另一方面,还提供一种基于文件映射的数据处理装置,包括:
[0042] 配置模,用于配置编辑协议文件模板;
[0043] 转换模块,用于将第一格式数据通过协议文件模板转换为第二格式数据。
[0044] 根据本发明另一方面,还提供一种基于文件映射的数据处理设备,所述基于文件映射的数据处理设备包括:
[0045] 一个或多个处理器;
[0046] 存储器,用于存储一个或多个计算机程序,一个或多个所述处理器用于执行所述存储器存储的一个或多个计算机程序,以使一个或多个所述处理器执行如上文所述的基于文件映射的数据处理方法。
[0047] 根据本发明另一方面,还提供一种计算机可读的存储介质,所述存储介质上存储有计算机程序,所述计算机程序被执行时实现如上文所述的基于文件映射的数据处理方法。
[0048] 实施本发明基于文件映射的数据处理方法及系统的技术方案,具有如下优点或有益效果:本发明通过配置CSV文件定义如何把第一格式数据转换成第二格式数据的方法,可通过不同的CSV配置方式决定转换内容,针对不同的二进制格式数据协议,无需再编写特定转换程序,只需通过简单的CSV配置则可转换,极大提高功能复用性,降低开发成本。附图说明
[0049] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍,显而易见,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,附图中:
[0050] 图1是本发明基于文件映射的数据处理方法实施例的流程示意图;
[0051] 图2是本发明基于文件映射的数据处理方法实施例的配置编辑协议文件模板的流程示意图;
[0052] 图3是本发明基于文件映射的数据处理方法实施例的将第一格式数据通过协议文件模板转换为第二格式数据的第一流程示意图;
[0053] 图4是本发明基于文件映射的数据处理方法实施例的将第一格式数据通过协议文件模板转换为第二格式数据的第二流程示意图;
[0054] 图5是本发明基于文件映射的数据处理装置实施例的模块示意图。

具体实施方式

[0055] 为了使本发明的目的、技术方案及优点更加清楚明白,下文将要描述的各种示例性实施例将要参考相应的附图,这些附图构成了示例性实施例的一部分,其中描述了实现本发明可能采用的各种示例性实施例,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。应明白,它们仅是与如所附权利要求书中所详述的、本发明公开的一些方面相一致的装置和方法的例子,还可使用其他的实施例,或者对本文列举的实施例进行结构和功能上的修改,而不会脱离本发明的范围和实质。在其他情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
[0056] 在本发明的描述中,需要理解的是,术语CSV(Comma-Separated Values,字符分隔值),其文件以纯文本形式存储表格数据(数字和文本),纯文本意味着该文件是一个字符序列,不含必须像二进制格式数字那样被解读的数据, CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列。Byte(字节),是计算机信息技术用于计量存储容量的一种计量单位,在计算机编程语言中表示数据类型和语言字符。Bit(Binary digit,比特,二进制位),是信息的最小单位,是二进制数的一位包含的信息或
2个选项中特别指定1个的需要信息量,只有两种状态:0和1;这两个值也可以被解释为逻辑值(真/假、yes/no)、代数符号(+/-)、激活状态(on/off)或任何其他两值属性。一个字节(Byte)为8个比特(Bit),一个英文字母通常占用一个字节,一个汉字通常占用两个字节。需要说明的是,除非另有明确的规定和限定,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
[0057] 为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
[0058] 实施例一:
[0059] 如图1-4示出了本基于文件映射的数据处理方法、装置及设备实施例提供的示意图,为了便于说明,仅示出了与本发明实施例相关的部分。本发明基于文件映射的数据处理方法,包括步骤:
[0060] 配置编辑协议文件模板;
[0061] 将第一格式数据通过协议文件模板转换为第二格式数据。
[0062] 如图2所示,在本实施例中,配置协议文件模板,包括步骤:
[0063] S100、根据预设协议格式将第一格式数据划分层级及至少一个字段,所述字段包括字段名称、长度、大小端以及有无符号;更为具体的,预设协议格式可以是第三方终端的协议格式,如PLC、电池包等的内部数据的协议格式。更为具体的,有无符号是指两值属性,这两个值也可以被解释为逻辑值 (真/假、yes/no)、代数符号(+/-)、激活状态(on/off)或任何其他两值属性。
[0064] 具体的,字节的存储有两种排列规则(大小端),一种为小端(little endian, LE),另一种为大端(big endian,BE),小端:在存储器中按照从最低字节到最高字节的顺序存储对象,例如:数字98341,二级制为00 01 80 25,在存储时表示为25 80 01 00。大端:在存储器中按照最高字节到最低字节的顺序存储对象,例如:数字1000。
[0065] S101、创建入口CSV文件;所述CSV文件是采用文本编辑器来创建,具体的,文本编辑器(或称文字编辑器)是用作编写普通文字的应用软件,它与文档编辑器(或称文字处理器)不同之处在于它并非用作桌面排版(例如文档格式处理),它常用来编写程序的源代码,如WORDPAD或记事本。
[0066] S102、判断每个字段的字段类型;
[0067] S103、将每个字段需直接转换成数值的长度标示为数字,并执行步骤S107;
[0068] S104、将每个字段需以多Byte展开的长度标示为第一符号,根据字段新建一个“字段名称.csv”的CSV文件,并返回步骤S102;
[0069] S105、将每个字段需以Bit展开的长度标示为第二符号,根据字段新建一个“字段名称.csv”的CSV文件;具体的,所述第一符号为“*”,所述第二符号为“#”,当然,也可以是其他符号来表示;
[0070] S106、将以Bit展开的字段与Bit位置一一对应为Bit信息;具体的,Bit 位置为0-7位,则字段均有对应Bit位置,进而形成为Bit信息。
[0071] S107、将每个字段写入相应的CSV文件,具体的,属于入口CSV文件的字段写入入口CSV文件,属于“字段名称.csv”的CSV文件的字段则写入该CSV文件。
[0072] 具体的,入口CSV文件与“字段名称.csv”的CSV文件属于嵌套结构,如入口CSV文件结构如下表所示。
[0073]
[0074] 对应的,嵌套的“bit-codec.test.csv”的CSV文件的结构则为:
[0075]Bit位置 0 1 2 3 4 5 6 7
  a b c d e f g 中文1
[0076] 对应的,嵌套的“nest.csv”的CSV文件的结构为:
[0077]
[0078] 在本实施例中,转换包括两种方式“解码”和“编码”,二进制到JSON 是解码,JSON到二进制是编码。具体的,所述第一格式数据为二进制格式数据,所述第二格式数据为JSON格式数据,即将二进制格式数据解码为JSON 格式数据;或者所述第一格式数据为JSON格式数据,所述第二格式数据为二进制格式数据,即将JSON格式数据编码为二进制格式数据,以下分两种情况分别予以详细介绍说明。
[0079] 如图3所示,在本实施例中,所述第一格式数据为二进制格式数据,所述第二格式数据为JSON格式数据,所述将第一格式数据通过协议文件模板转换为第二格式数据,包括步骤:
[0080] S201、加载协议文件模板;具体为:将协议文件模板加载进入内存中。
[0081] S202、输入第一格式数据;
[0082] S203、读取入口CSV文件的字段;
[0083] S204、判断识别字段的长度;
[0084] S205、如长度为数字,按照长度读取第一格式数据,并按照大小端和有无符号解码成数值数据,并执行步骤S209;
[0085] S206、如长度为第一符号,读取“字段名称.csv”的CSV文件,并返回步骤S204;
[0086] S207、如长度为第二符号,读取“字段名称.csv”的CSV文件,计算其长度并按照长度读取第一格式数据;
[0087] S208、按照字段解码为对应的Bit信息;
[0088] S209、转换输出所有的第二格式数据,即转换输出入口CSV文件内的第一格式数据对应的所有的第二格式数据。
[0089] 如图4所示,在本实施例中,所述第一格式数据为JSON格式数据,所述第二格式数据为二进制格式数据,所述将第一格式数据通过协议文件模板转换为第二格式数据,包括步骤:
[0090] S201、加载协议文件模板;具体为:将协议文件模板加载进入内存中。
[0091] S202、输入第一格式数据;
[0092] S203、读取入口CSV文件的字段;
[0093] S204、判断识别字段的长度;
[0094] S205、如长度为数字,按照长度读取第一格式数据,并按照大小端和有无符号将第一格式数据编码成第二格式数据,并执行步骤S209;
[0095] S206、如长度为第一符号,读取“字段名称.csv”的CSV文件,并返回步骤S204;
[0096] S207、如长度为第二符号,读取“字段名称.csv”的CSV文件,计算其长度并按照长度读取第一格式数据;
[0097] S208、按照字段将Bit信息编码成第二格式数据;
[0098] S209、转换输出所有的第二格式数据,即转换输出入口CSV文件内的第一格式数据对应的所有的第二格式数据。
[0099] 本发明可通过配置CSV文件适配任意二进制数据结构,无需额外开发转换程序,CSV结构直观易懂,非编程人员也能快速上手,CSV结构紧凑,贴合二进制数据的高密度形态,只需逗号和换行,编辑时因格式出错的概率小,多款编辑器都可编辑,借助Excel等可视化工具编辑所见即所得,转换成的 JSON数据格式在数据交换场合便于理解。
[0100] 本发明通过配置CSV文件定义如何把二进制格式数据(或者JSON格式数据)转换成JSON格式数据(或者二进制格式数据)的方法,可通过不同的 CSV配置方式决定转换内容,针对不同的二进制格式数据协议,无需再编写特定转换程序,只需通过简单的CSV配置则可转换,极大提高功能复用性,降低开发成本。
[0101] 实施例二:
[0102] 如图5所示,本发明还提供一种基于文件映射的数据处理装置实施例,包括:配置模块,用于配置协议文件模板;具体的,配置协议文件模板的步骤如实施例一所述。转换模块,用于将第一格式数据通过协议文件模板转换为第二格式数据,具体的,将第一格式数据通过协议文件模板转换为第二格式数据的步骤如实施例一所述。
[0103] 实施例三:
[0104] 本发明还提供一种基于文件映射的数据处理设备实施例,包括一个或多个处理器及存储器;其中,所述存储器用于存储一个或多个计算机程序,所述一个或多个处理器用于执行存储器存储的一个或多个计算机程序,以使处理器执行上述的基于文件映射的数据处理方法实施例的步骤。
[0105] 实施例四:
[0106] 本领域普通技术人员可以理解,实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读的存储介质中,存储介质上存储有计算机程序,所述计算机程序被(如处理器)执行时,执行包括上述的基于文件映射的数据处理方法实施例的步骤,而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0107] 在阅读完下面将要描述的内容之后,本领域的技术人员应当明白,本文描述的各种特征可通过方法、数据处理系统或计算机程序产品来实现。因此,这些特征可不采用硬件的方式、全部采用软件的方式或者采用硬件和软件结合的方式来表现。此外,上述特征也可采用存储在一种或多种计算机可读存储介质上的计算机程序产品的形式来表现,该计算机可读存储介质中包含计算机可读程序代码段或者指令,其存储在存储介质中。可读存储介质被配置为存储各种类型的数据以支持在装置的操作。可读存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现。如静硬态盘、随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、光存储设备、磁存储设备、快闪存储器、磁盘或光盘和/或上述设备的组合。
[0108] 以上仅为本发明的较佳实施例而已,本领域技术人员知悉,在不脱离本发明的精神和范围的情况下,可以对这些特征和实施例进行各种改变或等同替换。另外,在本发明的教导下,可以对这些特征和实施例进行修改以适应具体的情况及材料而不会脱离本发明的精神和范围。因此,本发明不受此处所公开的具体实施例的限制,所有落入本申请的权利要求范围内的实施例都属于本发明的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈