数据存储方法、装置及电子设备制造方法及图纸

技术编号:21299377 阅读:33 留言:0更新日期:2019-06-12 07:52
本申请提供一种数据存储方法、装置及电子设备,涉及数据处理技术领域。所述方法包括:获取原始excel数据表;对原始excel数据表进行解析,生成与原始excel数据表对应的类文件;将原始excel数据表中的数据与类文件进行匹配;采用protobuf将原始excel数据表中与类文件匹配的数据存储为数据资源文件;对类文件及数据资源文件进行存储。本申请节省了数据存储空间,提高了数据资源文件的加载速度,从而使游戏系统性能得到有效的改善,提高游戏运行的流畅度。

Data storage methods, devices and electronic devices

The application provides a data storage method, device and electronic device, which relates to the technical field of data processing. The methods include: obtaining the original Excel data table; parsing the original Excel data table to generate class files corresponding to the original Excel data table; matching the data in the original Excel data table with class files; storing the data matched with class files in the original Excel data table as data resource files by protobuf; and storing class files and data resource files. This application saves data storage space and improves the loading speed of data resource files, thus effectively improving the performance of the game system and improving the fluency of the game operation.

【技术实现步骤摘要】
数据存储方法、装置及电子设备
本申请涉及数据处理
,具体而言,涉及一种数据存储方法、装置及电子设备。
技术介绍
目前,在游戏开发过程中所用到的数据大多是基于excel数据表导出json格式、xml格式或通过自定义工具导出的自定义格式的数据文件。在数据量很大的情况下,由于现有的游戏数据存储格式中包含许多冗余的属性字段或相同的数据字段,会占用较多的存储空间,对存储资源造成不必要的浪费,并且在序列化和反序列化方面的性能也较为低下,影响游戏运行的流畅度。
技术实现思路
有鉴于此,本申请实施例的目的在于提供一种数据存储方法、装置及电子设备,以解决上述问题。第一方面,本申请实施例提供一种数据存储方法,所述方法包括:获取原始excel数据表;对所述原始excel数据表进行解析,生成与所述原始excel数据表对应的类文件;将所述原始excel数据表中的数据与所述类文件进行匹配;采用protobuf将所述原始excel数据表中与所述类文件匹配的数据存储为数据资源文件;对所述类文件及所述数据资源文件进行存储。可选地,对所述原始excel数据表进行解析,生成与所述原始excel数据表对应的类文件,包括:获取所述原始excel数据表中的数据名称;获取所述原始excel数据表中与所述数据名称对应的数据类型;根据所述数据名称及数据类型生成所述类文件。可选地,将所述原始excel数据表中的数据与所述类文件进行匹配,包括:遍历所述原始excel数据表,得到所述原始excel数据表中的多个数据组;根据所述类文件创建类实例;将所述多个数据组依次组装到所述类实例中。可选地,采用protobuf将所述原始excel数据表中与所述类文件匹配的数据存储为数据资源文件,包括:采用protobuf将所述原始excel数据表中与所述类文件匹配的数据进行序列化,得到二进制数据;获取所述二进制数据,并将所述二进制数据存储为数据资源文件。第二方面,本申请实施例还提供一种数据存储装置,所述装置包括:获取模块,用于获取原始excel数据表;解析模块,用于对所述原始excel数据表进行解析,生成与所述原始excel数据表对应的类文件;匹配模块,用于将所述原始excel数据表中的数据与所述类文件进行匹配;protobuf模块,用于采用protobuf将所述原始excel数据表中与所述类文件匹配的数据存储为数据资源文件;存储模块,用于对所述类文件及所述数据资源文件进行存储。可选地,所述解析模块具体用于:获取所述原始excel数据表中的数据名称;获取所述原始excel数据表中与所述数据名称对应的数据类型;根据所述数据名称及数据类型生成所述类文件。可选地,所述匹配模块具体用于:遍历所述原始excel数据表,得到所述原始excel数据表中的多个数据组;根据所述类文件创建类实例;将所述多个数据组依次组装到所述类实例中。可选地,所述protobuf模块具体用于:采用protobuf将所述原始excel数据表中与所述类文件匹配的数据进行序列化,得到二进制数据;获取所述二进制数据,并将所述二进制数据存储为数据资源文件。第三方面,本申请实施例还提供一种电子设备,所述电子设备包括处理器及存储有计算机指令的非易失性存储器,计算机指令被处理器执行时,实现以上实施例中所述的数据存储方法。第四方面,本申请实施例还提供一种存储介质,所述存储介质包括计算机程序,所述计算机程序运行时控制所述存储介质所在的电子设备执行以上实施例中所述的数据存储方法。相对于现有技术而言,本申请具有以下有益效果:本申请实施例提供的数据存储方法、装置及电子设备,对获取的原始excel数据表进行解析,生成与所述原始excel数据表对应的类文件,再采用protobuf将所述原始excel数据表中与所述类文件匹配的数据存储为数据资源文件,节省了数据存储空间,提高了数据资源文件的加载速度,从而使游戏系统性能得到有效的改善,提高游戏运行的流畅度。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应该看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为本申请实施例提供的电子设备的方框示意图;图2为本申请实施例提供的数据存储方法的流程示意图;图3为本申请实施例提供的原始excel数据表示例图;图4为图2中步骤S20的子步骤流程示意图;图5为本申请实施例提供的xml、json、Hessian及protobuf四种数据格式的序列化性能对比柱状图;图6为本申请实施例提供的xml、json、Hessian及protobuf四种数据格式的序列化性能对比柱状图;图7为本申请实施例提供的数据存储装置的功能模块示意图。图标:10-电子设备;20-数据存储装置;11-处理器;12-存储器;21-获取模块;22-解析模块;23-匹配模块;24-protobuf模块;25-存储模块。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。现有技术中,在游戏开发过程中所用到的数据大多是基于excel数据表导出json格式、xml格式或通过自定义工具导出的自定义格式的数据文件。一方面,以json格式为例,请结合以下示例性代码段:可以看出,json格式在对每一行数据进行存储时,都需要重复地定义各行数据的数据名称及具体的数据内容等,使json格式存储的数据中包含了许多冗余字段。当需要存储的数据量较大时,这些冗余、重复的字段会占用较多额外的存储空间,在存储资源有限的情况下,使例如纹理贴图等其他本身需要占用较多存储资源的游戏数据得不到充足的存储空间,从而对存储资源无法得到合理分配,造成一种不必要的浪费。另一方面,在数据量较大的情况下,同等数据量的xml、json等格式的数据在序列化和反序列化过程中需要花费较多的处理时间,严重制约了游戏运行的效率和流畅度。为了克服上述现有技术中存在的问题,申请人经过研究提供了下面实施例给出的解决方案。请结合参照图1,图1是本申请实施例提供的电子设备10的方框示意图。所述电子设备10包括处理器11、存储器12及数据存储装置20。所述电子设备10可以是个人电脑(personalcomputer,PC)、平板电脑、个人数字助理(personaldigitalassistant,PDA)等,所述电子设备10的操作系统(operatingsystem,OS)可以是,但不限于,安卓(Android)系统、IOS(iPhoneoperatingsystem)系统、Wind本文档来自技高网...

【技术保护点】
1.一种数据存储方法,其特征在于,所述方法包括:获取原始excel数据表;对所述原始excel数据表进行解析,生成与所述原始excel数据表对应的类文件;将所述原始excel数据表中的数据与所述类文件进行匹配;采用protobuf将所述原始excel数据表中与所述类文件匹配的数据存储为数据资源文件;对所述类文件及所述数据资源文件进行存储。

【技术特征摘要】
1.一种数据存储方法,其特征在于,所述方法包括:获取原始excel数据表;对所述原始excel数据表进行解析,生成与所述原始excel数据表对应的类文件;将所述原始excel数据表中的数据与所述类文件进行匹配;采用protobuf将所述原始excel数据表中与所述类文件匹配的数据存储为数据资源文件;对所述类文件及所述数据资源文件进行存储。2.如权利要求1所述的数据存储方法,其特征在于,对所述原始excel数据表进行解析,生成与所述原始excel数据表对应的类文件,包括:获取所述原始excel数据表中的数据名称;获取所述原始excel数据表中与所述数据名称对应的数据类型;根据所述数据名称及数据类型生成所述类文件。3.如权利要求2所述的数据存储方法,其特征在于,将所述原始excel数据表中的数据与所述类文件进行匹配,包括:遍历所述原始excel数据表,得到所述原始excel数据表中的多个数据组;根据所述类文件创建类实例;将所述多个数据组依次组装到所述类实例中。4.如权利要求3所述的数据存储方法,其特征在于,采用protobuf将所述原始excel数据表中与所述类文件匹配的数据存储为数据资源文件,包括:采用protobuf将所述原始excel数据表中与所述类文件匹配的数据进行序列化,得到二进制数据;获取所述二进制数据,并将所述二进制数据存储为数据资源文件。5.一种数据存储装置,其特征在于,所述装置包括:获取模块,用于获取原始excel数据表;解析模块,用于对所述原始exc...

【专利技术属性】
技术研发人员:王权
申请(专利权)人:北京像素软件科技股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1