CN111061481A - 数据格式转换方法及装置 - Google Patents
数据格式转换方法及装置 Download PDFInfo
- Publication number
- CN111061481A CN111061481A CN201911298213.6A CN201911298213A CN111061481A CN 111061481 A CN111061481 A CN 111061481A CN 201911298213 A CN201911298213 A CN 201911298213A CN 111061481 A CN111061481 A CN 111061481A
- Authority
- CN
- China
- Prior art keywords
- data
- description file
- format conversion
- structure description
- format
- 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
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 77
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000012986 modification Methods 0.000 claims description 5
- 230000004048 modification Effects 0.000 claims description 5
- 238000012856 packing Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 7
- 238000011161 development Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明提供了一种数据格式转换方法及装置。该方法包括:根据源数据结构描述文件所描述的数据格式,将源数据转换为内部数据;根据目标数据结构描述文件所描述的数据格式,将内部数据转换为目标数据。本发明提供的数据格式转换方法及装置能够大幅提高数据格式转换的执行效率。
Description
技术领域
本发明涉及数据处理技术领域,特别是涉及一种数据格式转换方法及装置。
背景技术
在企业I T架构发展越来越复杂的趋势下,企业的IT系统数据格式、数据交互数量也越来越多,而且随着新技术的发展,也会出现新的数据格式,例如XML、JSON、8583、SOP等等。
一般的系统在解决不同数据格式之间的转换问题时,通常是针对一个格式转换问题,提出一个解决方案。这就意味着,每当需要完成两种不同的数据格式的转换时,均需要独立完成一次转换代码的开发和执行。这就意味着不同数据格式之间的转换效率低下。
发明内容
本发明要解决的技术问题是提供一种数据格式转换方法及装置,能够大幅提高数据格式转换的执行效率。
为解决上述技术问题,本发明提供了一种数据格式转换方法,所述方法包括:根据源数据结构描述文件所描述的数据格式,将源数据转换为内部数据;根据目标数据结构描述文件所描述的数据格式,将内部数据转换为目标数据;其中,源数据结构描述文件与源数据的数据格式一一对应,目标数据结构描述文件与目标数据的数据格式一一对应。
在一些实施方式中,根据源数据结构描述文件所描述的数据格式,将源数据转换为内部数据,包括:格式转换引擎根据源数据结构描述文件所描述的数据格式,生成数据拆包执行代码;数据拆包执行代码将源数据转换为内部数据。
在一些实施方式中,根据源数据结构描述文件所述描述的数据格式,将源数据转换为内部数据,还包括:在格式转换引擎根据原数据结构描述文件所描述的数据格式,生成数据拆包执行代码之前,根据源数据的数据格式编写成格式转换引擎可读的源数据结构描述文件。
在一些实施方式中,根据目标数据结构描述文件所述描述的数据格式,将内部数据转换为目标数据,包括:格式转换引擎根据目标数据结构描述文件所描述的数据格式,生成数据组包执行代码;数据组包执行代码将内部数据转换为目标数据。
在一些实施方式中,根据目标数据结构描述文件所述描述的数据格式,将内部数据转换为目标数据,还包括:在格式转换引擎根据目标数据结构描述文件所描述的数据格式,生成数据组包执行代码之前,根据目标数据的数据格式编写成格式转换引擎可读的目标数据结构描述文件。
在一些实施方式中,还包括:格式转换引擎会监测源数据结构描述文件和目标数据结构描述文件,当文件发生变化时,会重新生成和编译数据拆包代码和数据组包代码,使格式的修改能够实时生效。
此外,本发明还提供了一种数据格式转换装置,所述装置包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据前文所述的数据格式转换方法。
采用这样的设计后,本发明至少具有以下优点:
本发明实施例提供的数据格式转换方法及装置,仅需要源数据结构描述文件及目标数据结构描述文件,就可以完成不同数据格式之间的转换过程,大大提高了格式转换的执行效率。
基于编译型的数据格式转换方法,直接生成执行码,比解释型的数据格式转换方法更快。
能够监测源数据结构描述文件及目标数据结构描述文件,当文件发生变化时,会重新生成和编译数据拆包代码和数据组包代码,使格式的修改能够实时生效。
附图说明
上述仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,以下结合附图与具体实施方式对本发明作进一步的详细说明。
图1是本发明实施例提供的数据格式转换方法的流程图;
图2是本发明实施例提供的数据格式转换方法的流程图;
图3是本发明实施例提供的数据格式转换装置的结构图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1示出了本发明提供的数据格式转换方法的流程图。参见图1,数据格式转换方法包括:
S11,根据源数据结构描述文件所描述的数据格式,将源数据转换为内部数据。
S12,根据目标数据结构描述文件所描述的数据格式,将内部数据转换为目标数据。
采用本发明实施例提供的数据格式转换方法进行数据之间的格式转换,只需要分别定义出源数据结构描述文件及目标数据结构描述文件,就能够完成由源数据至目标数据之间的格式转换,不再需要针对不同的格式转换任务独立的进行代码开发,因而能够大大提高格式转换的执行效率。
图2示出了本发明提供的数据格式转换方法的流程图。参见图2,数据格式转换方法包括:
S21,将源数据的数据格式编写成格式转换引擎可读的源数据结构描述文件。
S22,将源数据结构描述文件输入格式转换引擎、输出数据拆包执行码。
S23,将源数据出入数据拆包执行码,拆包执行码将源数据解析拆分成内部数据格式。
S24,将目标数据的数据格式编写成格式转换引擎可读的目标数据结构描述文件。
S25,将目标数据结构描述文件输入格式转换引擎、输出数据组包执行码。
S26,将内部数据格式输入数据组包执行码,组包执行码将内部数据格式转换成目标数据格式。
由于采用了内部格式作为两种不同数据格式转换的中间媒介,使得不同数据格式之间的转换流程能够统一定制,再加上采用源数据结构描述文件描述源数据格式,又采用目标数据结构描述文件描述目标数据格式,使得数据格式之间转换的开发及执行过程大为简化,大大提高了数据格式转换的执行效率。
之所以能够简化格式转换的开发和执行过程,主要原因在于源数据结构描述文件与源数据的数据格式是一一对应的关系。同样,目标数据结构描述文件与目标数据的数据格式也是一一对应的关系。这就意味着,对于相同的格式的文件,只要在格式转换过程中所处的地位不变,就可以运用相同的数据结构描述文件进行数据格式的描述,不必重新编写数据结构描述文件的代码,因而开发效率会大大提升。
典型的,源数据结构描述文件为XML、JSON或者protobuf格式。目标数据结构描述文件也同样可以是XML、JSON或者protobuf格式。
而且,在图2示出的执行过程中,还引入了格式转换引擎。格式转换引擎的作用在于根据数据结构描述文件的文件格式定义,自动生成格式转换过程使用的代码。
在源端及目标端均配置有格式转换引擎。源端和目标端配置的格式转换引擎之间的不同之处在于,源端配置的格式转换引擎的作用在于生成拆包代码,而目标端配置的格式转换引擎的作用在于生成组包代码。
拆包代码的运行,会将源数据格式转换为内部数据格式。组包代码的运行,则会将内部数据格式转换为目标数据格式。
一个典型的例子,将word文件转换为pdf文件,采用本发明实施例提供的方式,只需要描述word文件格式的源数据结构描述文件,以及描述pdf文件格式的目标数据结构描述文件,通过格式转换引擎进行相应的代码自动生成,就可以完成整体的格式转换操作,运行效率大大提升。
图3是本发明数据格式转换装置的结构图。参见图3,数据格式转换装置包括:中央处理单元(CPU)301,其可以根据存储在只读存储器(ROM)中的程序或者从存储部分308加载到随机访问存储器(RAM)303中的程序而执行各种适当的动作和处理。在RAM 303中,还存储有系统操作所需的各种程序和数据。CPU 301、ROM 302以及RAM 303通过总线304彼此相连。输入/输出(I/O)接口305也连接至总线304。
以下部件连接至I/O接口305:包括键盘、鼠标等的输入部分306;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分307;包括硬盘等的存储部分308;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分309。通信部分309经由诸如因特网的网络执行通信处理。驱动器310也根据需要连接至I/O接口305。可拆卸介质311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器310上,以便于从其上读出的计算机程序根据需要被安装入存储部分308。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,本领域技术人员利用上述揭示的技术内容做出些许简单修改、等同变化或修饰,均落在本发明的保护范围内。
Claims (7)
1.一种数据格式转换方法,其特征在于,包括:
根据源数据结构描述文件所描述的数据格式,将源数据转换为内部数据;
根据目标数据结构描述文件所描述的数据格式,将内部数据转换为目标数据;
其中,源数据结构描述文件与源数据的数据格式一一对应,目标数据结构描述文件与目标数据的数据格式一一对应。
2.根据权利要求1所述的数据格式转换方法,其特征在于,根据源数据结构描述文件所描述的数据格式,将源数据转换为内部数据,包括:
格式转换引擎根据源数据结构描述文件所描述的数据格式,生成数据拆包执行代码;
数据拆包执行代码将源数据转换为内部数据。
3.根据权利要求2所述的数据格式转换方法,其特征在于,根据源数据结构描述文件所述描述的数据格式,将源数据转换为内部数据,还包括:
在格式转换引擎根据原数据结构描述文件所描述的数据格式,生成数据拆包执行代码之前,根据源数据的数据格式编写成格式转换引擎可读的源数据结构描述文件。
4.根据权利要求1所述的数据格式转换方法,其特征在于,根据目标数据结构描述文件所述描述的数据格式,将内部数据转换为目标数据,包括:
格式转换引擎根据目标数据结构描述文件所描述的数据格式,生成数据组包执行代码;
数据组包执行代码将内部数据转换为目标数据。
5.根据权利要求4所述的数据格式转换方法,其特征在于,根据目标数据结构描述文件所述描述的数据格式,将内部数据转换为目标数据,还包括:
在格式转换引擎根据目标数据结构描述文件所描述的数据格式,生成数据组包执行代码之前,根据目标数据的数据格式编写成格式转换引擎可读的目标数据结构描述文件。
6.根据权利要求1所述的数据格式转换方法,其特征在于,还包括:
格式转换引擎会监测源数据结构描述文件和目标数据结构描述文件,当文件发生修改时,会重新生成和编译数据拆包代码和数据组包代码,使格式的修改能够实时生效。
7.一种数据格式转换装置,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据权利要求1至6任意一项所述的数据格式转换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911298213.6A CN111061481A (zh) | 2019-12-17 | 2019-12-17 | 数据格式转换方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911298213.6A CN111061481A (zh) | 2019-12-17 | 2019-12-17 | 数据格式转换方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111061481A true CN111061481A (zh) | 2020-04-24 |
Family
ID=70301088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911298213.6A Pending CN111061481A (zh) | 2019-12-17 | 2019-12-17 | 数据格式转换方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111061481A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112383533A (zh) * | 2020-11-10 | 2021-02-19 | 中国农业银行股份有限公司 | 报文格式转换方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1567829A (zh) * | 2003-07-07 | 2005-01-19 | 中兴通讯股份有限公司 | 通用数据文件转换方法 |
CN103699386A (zh) * | 2013-12-27 | 2014-04-02 | 云南电网公司玉溪供电局 | 一种基于osgi的通用数据转换引擎系统 |
CN104765717A (zh) * | 2014-01-08 | 2015-07-08 | 北大方正集团有限公司 | 一种批量文档格式转换的方法及装置 |
CN108052320A (zh) * | 2017-12-11 | 2018-05-18 | 上证所信息网络有限公司 | 一种将二进制结构体转换为json对象的方法 |
CN109086444A (zh) * | 2018-08-17 | 2018-12-25 | 吉林亿联银行股份有限公司 | 一种数据标准化方法、装置及电子设备 |
CN109657103A (zh) * | 2018-12-19 | 2019-04-19 | 广州天鹏计算机科技有限公司 | 数据结构的转换方法、装置、计算机设备和存储介质 |
CN110308907A (zh) * | 2019-07-03 | 2019-10-08 | 携程旅游网络技术(上海)有限公司 | 数据转换方法、装置、存储介质及电子设备 |
WO2019226384A1 (en) * | 2018-05-25 | 2019-11-28 | Microsoft Technology Licensing, Llc | Semantic comparison of computer compiler traces |
-
2019
- 2019-12-17 CN CN201911298213.6A patent/CN111061481A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1567829A (zh) * | 2003-07-07 | 2005-01-19 | 中兴通讯股份有限公司 | 通用数据文件转换方法 |
CN103699386A (zh) * | 2013-12-27 | 2014-04-02 | 云南电网公司玉溪供电局 | 一种基于osgi的通用数据转换引擎系统 |
CN104765717A (zh) * | 2014-01-08 | 2015-07-08 | 北大方正集团有限公司 | 一种批量文档格式转换的方法及装置 |
CN108052320A (zh) * | 2017-12-11 | 2018-05-18 | 上证所信息网络有限公司 | 一种将二进制结构体转换为json对象的方法 |
WO2019226384A1 (en) * | 2018-05-25 | 2019-11-28 | Microsoft Technology Licensing, Llc | Semantic comparison of computer compiler traces |
CN109086444A (zh) * | 2018-08-17 | 2018-12-25 | 吉林亿联银行股份有限公司 | 一种数据标准化方法、装置及电子设备 |
CN109657103A (zh) * | 2018-12-19 | 2019-04-19 | 广州天鹏计算机科技有限公司 | 数据结构的转换方法、装置、计算机设备和存储介质 |
CN110308907A (zh) * | 2019-07-03 | 2019-10-08 | 携程旅游网络技术(上海)有限公司 | 数据转换方法、装置、存储介质及电子设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112383533A (zh) * | 2020-11-10 | 2021-02-19 | 中国农业银行股份有限公司 | 报文格式转换方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110096338B (zh) | 智能合约执行方法、装置、设备及介质 | |
US8191042B2 (en) | Continuation based declarative definition and composition | |
US8819647B2 (en) | Performance improvements for nested virtual machines | |
JP5936118B2 (ja) | コード変換方法、プログラム及びシステム | |
JPH08339304A (ja) | 機械独立コードを含むプラットフォーム標準オブジェクト・ファイルを生成する方法および装置 | |
US20050028151A1 (en) | Module symbol export | |
US20150347101A1 (en) | R-language integration with a declarative machine learning language | |
CN110058861B (zh) | 源码处理方法及装置、存储介质、电子设备 | |
CN115543290B (zh) | 可视化编程方法及系统 | |
US11029924B2 (en) | Program optimization by converting code portions to directly reference internal data representations | |
CN114968192A (zh) | 一种项目创建方法、装置、计算机设备及存储介质 | |
CN111061481A (zh) | 数据格式转换方法及装置 | |
US20220172044A1 (en) | Method, electronic device, and computer program product for deploying machine learning model | |
CN111771186A (zh) | 编译器生成的异步可枚举对象 | |
CN117075909A (zh) | 用于实现并行编程的编译方法、电子设备和介质 | |
US8661421B2 (en) | Methods and apparatuses for endian conversion | |
KR20110052904A (ko) | 컴퓨팅 시스템 및 컴퓨팅 시스템의 디버그 정보 처리 방법 | |
CN116841559A (zh) | 代码转换方法、装置、设备、介质和程序产品 | |
US11604774B2 (en) | Method and apparatus of converting schema in deep learning framework, and computer storage medium | |
CN115629802A (zh) | 程序移植处理方法及装置 | |
US11429358B2 (en) | Representing asynchronous state machine in intermediate code | |
US9720660B2 (en) | Binary interface instrumentation | |
US9298449B2 (en) | Composite program history | |
WO2020211074A1 (zh) | 一种多方安全计算数据处理方法、装置及系统 | |
CN111240693A (zh) | 实时数据处理方法、装置、设备及存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200424 |
|
RJ01 | Rejection of invention patent application after publication |