[发明专利]一种数据转换方法及系统在审
申请号: | 201510686501.4 | 申请日: | 2015-10-21 |
公开(公告)号: | CN105354175A | 公开(公告)日: | 2016-02-24 |
发明(设计)人: | 谢建乐 | 申请(专利权)人: | 北京锐安科技有限公司 |
主分类号: | G06F17/22 | 分类号: | G06F17/22 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 胡彬;孟金喆 |
地址: | 100044 北京市海淀区西小口*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 转换 方法 系统 | ||
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据转换方法及系统。
背景技术
可扩展标记语言(ExtensibleMarkupLanguage,XML)具有简单性、结构化、可扩展性、互操作性、开放性、通用性、灵活性等特点,因而在数据转换、数据集成、数据发布、数据存储、数据管理、知识管理、信息检索等诸多领域获得广泛应用。
在数据转换应用中,通常采用XML定义的数据集通过一系列的过程进行数据集中实例数据的转换。在一个信息系统中,通常会根据工作的需要将一个数据集的实例数据转换为另一个数据集的实例数据,为了支持数据集的个数变化或是数据集的定义变化,通常的做法是在应用程序中手工修改相应的转换代码,重新编译整个应用程序,这种方法非常繁琐并且容易出错,当数据集发生变化时就需要编译整个应用程序。
发明内容
有鉴于此,本发明实施例提供一种数据转换方法及系统,能够自动高效地适应数据集的变化,不需要改变应用程序的代码,实现数据集之间的数据转换。
第一方面,本发明实施例提供了一种数据转换方法,包括:
通过可扩展标记语言对各个数据集进行定义;
对各个数据集的定义进行处理,生成与各个数据集相对应的各种中间数据;
基于所述各种中间数据及预写的动态链接库框架代码文件,生成动态链接库;
调用动态链接库的应用程序编程接口创建协议缓冲区对象,并通过相应的应用程序编程接口对协议缓冲区对象进行操作。
第二方面,本发明实施例还提供了一种数据转换系统,包括:
数据集定义模块,用于通过可扩展标记语言对各个数据集进行定义;
中间数据生成模块,用于对各个数据集的定义进行处理,生成与各个数据集相对应的各种中间数据;
动态链接库生成模块,用于基于所述各种中间数据及预写的动态链接库框架代码文件,生成动态链接库;
协议缓冲区对象操作模块,用于调用动态链接库的应用程序编程接口创建协议缓冲区对象,并通过相应的应用程序编程接口对协议缓冲区对象进行操作。
本发明实施例提供的一种数据转换方法及系统,通过将与数据集对应的中间数据生成动态链接库,当数据集变化时,仅需更新动态链接库,通过调用更新的动态链接库的接口就可以实现数据集实例数据的转换,不需要改变应用程序的代码。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1本实施例一提供的一种数据转换方法的流程图;
图2是本实施例一提供的应用程序的目录结构图;
图3是本实施例一提供的数据A中的实例向数据集B中的实例转换的流程图;
图4是本发明实施例二提供的一种数据转换系统的流程框图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
实施例一
图1为本发明实施例一提供的一种数据转换方法的流程图;该方法可以通过数据转换系统来执行,基于该系统可以由软件和/或硬件的方式来实现,如图1所示,所述的方法包括:
S110:通过可扩展标记语言对各个数据集进行定义。
在本实施例中,通过可扩展标记语言对数据集中的数据类型、数据的顺序、数据大小和数据长度进行定义等。例如,通过XML定义其中数据集的数据类型可以是整型值、定义数据的大小为8字节等。
S120:对各个数据集的定义进行处理,生成与各个数据集相对应的各种中间数据。
在本实施例中,对各个数据集定义的处理通过数据集预处理程序来执行。中间数据包括各个数据集对应的协议缓冲区ProtocolBuffer的定义文件、各个数据集之间的实例转换的字段对应关系,以及与ProtocolBuffer的定义文件相对应的h类型文件和与ProtocolBuffer的定义文件相对应的cc类型文件。
具体的,在本实施例中,生成中间数据的过程为:对各个数据集的定义进行处理,生成各个数据集对应的ProtocolBuffer的定义文件以及各个数据集之间的实例转换的字段对应关系。其中,各个数据集之间的实例转换的字段对应关系以C++源程序的形式表达,文件名为data.frag。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京锐安科技有限公司,未经北京锐安科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510686501.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置