一种电子报表生成方法及装置的制造方法_5

文档序号:8905086阅读:来源:国知局
是设备中所安装的表格文件的后缀 名,例如可W是.Xlsx或者.et,其中.et是WS中电子报表的后缀名,当将压缩包的文件后 缀名修改为电子报表对应的后缀名之后,电子报表被自动生成。如图13所示,为将图2所 示模板文件经过图1所示方法处理后得到的电子报表。
[0153] 通过本发明实施例提供的电子报表生成装置,在获取到电子报表对应的模板文件 后,可W对模板文件进行解析,得到需进行修改的多个底层XML文件,然后通过对其进行一 系列处理后得到一压缩包,再将该压缩包的文件后缀名修改为所述电子报表对应的后缀 名,W得到所述电子报表,因此由Microsoft开发的WXML为基础的电子表格都可W采用本 发明实施例提供的电子报表生成装置得到,并且从本发明实施例提供的电子报表生成装置 所示流程来看,其在生成电子报表过程中并未基于ApacheP0I类库等现有技术,而是一种 新的有别于现有基于ApacheP0I类库等现有技术的电子报表生成方式。
[0154] 此外,由于商业应用系统中真实数据的种类众多,所W会存在某些真实数据不能 满足模板文件的数据要求的情况,在该种情况下需要写入单元15进行判断后再写入,如图 18所示的写入单元15的另一种结构示意图,可W包括;判断子单元154、第S写入子单元 155和处理子单元156,其中;
[0155] 判断子单元154,用于判断从数据源获取到的真实数据是否可W直接写入对应的 所述多个底层XML文件中。
[0156] 第=写入子单元155,用于当所述判断子单元判断从数据源获取到的真实数据可 W直接写入对应的所述多个底层XML文件中时,使用文件10流的方式将所述真实数据写入 到对应的所述多个底层XML文件中。
[0157] 处理子单元156,用于当所述判断子单元判断从数据源获取到的真实数据不可W 直接写入对应的所述多个底层XML文件中时,对从数据源中获取的真实数据进行处理W使 其可W写入到对应的所述多个底层XML文件中,并使用文件10流的方式将处理后的真实数 据写入到对应的所述多个底层XML文件中。
[015引其中,数据源可W是数据库或者文件,当数据源是数据库时,使用S化标签获取数 据库中的真实数据,当数据源是文件时,使用File标签获取文件中的真实数据。S化标签为 用于指向数据库的组件,File标签为用于指向文件的组件。
[0159] 需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重 点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。 对于装置类实施例而言,由于其与方法实施例基本相似,所W描述的比较简单,相关之处参 见方法实施例的部分说明即可。
[0160] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将 一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示该些实体或操作 之间存在任何该种实际的关系或者顺序。而且,术语"包括"、"包含"或者其任何其他变体 意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括 那些要素,而且还包括没有明确列出的其他要素,或者是还包括为该种过程、方法、物品或 者设备所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并 不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0161] 对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对该 些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可 W在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限 制于本文所示的该些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的 范围。
【主权项】
1. 一种电子报表生成方法,其特征在于,所述方法包括: 获取所述电子报表对应的模板文件; 对所述模板文件进行解析,得到需进行修改的多个底层可扩展标记语言文件; 依据所述多个底层可扩展标记语言文件,对所述多个底层可扩展标记语言文件在程序 中对应的基础类进行初始化,得到所述多个底层可扩展标记语言文件中的sheet, xml文件 和sharedStrings. xml文件中指向数据的链接行,其中所述sheet, xml文件为电子表格中 工作表的文件,sharedStrings. xml文件用于存储所述电子报表中每一个sheet的真实数 据; 获取其他底层可扩展标记语言文件的修改数据以及依据所述链接行中的每个组件获 取所述sheet, xml文件和sharedStrings. xml文件中每个单元格所需的真实数据,其中每 个组件用于指向所述电子报表中每个单元格所需数据; 使用文件输入输出流的方式将所述真实数据和所述修改数据写入到对应的所述多个 底层可扩展标记语言文件中; 将写入数据的多个底层可扩展标记语言文件进行压缩,并将压缩后得到的压缩包的文 件后缀名修改为所述电子报表对应的后缀名,以得到所述电子报表。2. 根据权利要求1所述的方法,其特征在于,所述使用文件输入输出流的方式将所述 真实数据和所述修改数据写入到对应的所述多个底层可扩展标记语言文件中,包括: 将所述真实数据和所述修改数据写入到内存中; 当所述内存中所述数据的数据量大于第一预设值时,从所述内存中获取数据量为第二 预设值的数据; 使用文件输入输出流的方式将从内存中获取的数据写入到对应的所述多个底层可扩 展标记语言文件中。3. 根据权利要求1所述的方法,其特征在于,所述依据所述多个底层可扩展标记语言 文件,对所述多个底层可扩展标记语言文件在程序中对应的基础类进行初始化,得到所述 多个底层可扩展标记语言文件中的sheet, xml文件和sharedStrings. xml文件中指向数据 的链接行,包括: 依据所述多个底层可扩展标记语言文件,对所述多个底层可扩展标记语言文件在程序 中对应的基础类进行初始化,并采用自上而下的方式对sheet, xml文件和sharedStrings. xml文件中的组件进行处理,得到所述多个底层可扩展标记语言文件中的sheet, xml文件 和sharedStrings. xml文件中指向数据的链接行。4. 根据权利要求1所述的方法,其特征在于,所述使用文件输入输出流的方式将所述 真实数据写入到对应的所述多个底层可扩展标记语言文件中,包括: 判断从数据源获取到的真实数据是否可以直接写入对应的所述多个底层可扩展标记 语言文件中; 如果是,使用文件输入输出流的方式将所述真实数据写入到对应的所述多个底层可扩 展标记语言文件中; 如果否,对从数据源中获取的真实数据进行处理以使其可以写入到对应的所述多个底 层可扩展标记语言文件中,并使用文件输入输出流的方式将处理后的真实数据写入到对应 的所述多个底层可扩展标记语言文件中。5. 根据权利要求4所述的方法,其特征在于,当数据源是数据库时,使用SQL标签获取 数据库中的真实数据,当数据源是文件时,使用File标签获取文件中的真实数据。6. -种电子报表生成装置,其特征在于,所述装置包括: 第一获取单元,用于获取所述电子报表对应的模板文件; 解析单元,用于对所述模板文件进行解析,得到需进行修改的多个底层可扩展标记语 言文件; 初始化单元,用于依据所述多个底层可扩展标记语言文件,对所述多个底层可扩展标 记语言文件在程序中对应的基础类进行初始化,得到所述多个底层可扩展标记语言文件中 的sheet, xml文件和sharedStrings. xml文件中指向数据的链接行,其中所述sheet, xml 文件为电子表格中工作表的文件,sharedStrings. xml文件用于存储所述电子报表中每一 个sheet的真实数据; 第二获取单元,用于获取其他底层可扩展标记语言文件的修改数据以及依据所述链接 行中的每个组件获取所述sheet, xml文件和sharedStrings. xml文件中每个单元格所需的 真实数据,其中每个组件用于指向所述电子报表中每个单元格所需数据; 写入单元,用于使用文件输入输出流的方式将所述真实数据和所述修改数据写入到对 应的所述多个底层可扩展标记语言文件中; 修改单元,用于将写入数据的多个底层可扩展标记语言文件进行压缩,并将压缩后得 到的压缩包的文件后缀名修改为所述电子报表对应的后缀名,以得到所述电子报表。7. 根据权利要求6所述的装置,其特征在于,所述写入单元包括: 第一写入子单元,用于将所述真实数据和所述修改数据写入到内存中; 获取子单元,用于当所述内存中所述数据的数据量大于第一预设值时,从所述内存中 获取数据量为第二预设值的数据; 第二写入子单元,用于使用文件输入输出流的方式将从内存中获取的数据写入到对应 的所述多个底层可扩展标记语言文件中。8. 根据权利要求6所述的装置,其特征在于,所述初始化单元具体用于:依据所述多个 底层可扩展标记语言文件,对所述多个底层可扩展标记语言文件在程序中对应的基础类进 行初始化,并采用自上而下的方式对sheet, xml文件和sharedStrings. xml文件中的组件 进行处理,得到所述多个底层可扩展标记语言文件中的sheet, xml文件和sharedStrings. xml文件中指向数据的链接行。9. 根据权利要求6所述的装置,其特征在于,所述写入单元包括: 判断子单元,用于判断从数据源获取到的真实数据是否可以直接写入对应的所述多个 底层可扩展标记语言文件中; 第三写入子单元,用于当所述判断子单元判断从数据源获取到的真实数据可以直接写 入对应的所述多个底层可扩展标记语言文件中时,使用文件输入输出流的方式将所述真实 数据写入到对应的所述多个底层可扩展标记语言文件中; 处理子单元,用于当所述判断子单元判断从数据源获取到的真实数据不可以直接写入 对应的所述多个底层可扩展标记语言文件中时,对从数据源中获取的真实数据进行处理以 使其可以写入到对应的所述多个底层可扩展标记语言文件中,并使用文件输入输出流的方 式将处理后的真实数据写入到对应的所述多个底层可扩展标记语言文件中。
【专利摘要】本发明提供一种电子报表生成方法及装置,在获取到电子报表对应的模板文件后,可以对模板文件进行解析,得到需进行修改的多个底层XML文件,然后通过对其进行一系列处理后得到一压缩包,再将该压缩包的文件后缀名修改为所述电子报表对应的后缀名,以得到所述电子报表,因此由Microsoft开发的以XML为基础的电子表格都可以采用本发明实施例提供的电子报表生成方法得到,从而提高本发明实施例所提供方法的通用性。
【IPC分类】G06F9/44
【公开号】CN104881275
【申请号】CN201510071247
【发明人】丁慧, 焦健
【申请人】中国农业银行股份有限公司
【公开日】2015年9月2日
【申请日】2015年2月11日
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1