一种可扩展标记语言xml文件的生成方法、装置和系统的制作方法

文档序号:9667297阅读:366来源:国知局
一种可扩展标记语言xml文件的生成方法、装置和系统的制作方法
【技术领域】
[0001] 本发明涉及计算机技术领域,特别涉及一种可扩展标记语言XML文件的生成方 法、装置和系统。
【背景技术】
[0002] 现有技术中,在需要将数据进行传输时,为减小需要传输的数据量,通常会选择将 数据进行压缩处理。利用XML(ExtensibleMarkupLanguage,可扩展标记语言)对待传输 的文件进行存储会减小传输的数据量,因而在招投标等领域被广泛采用。
[0003] 然而,现有技术中,利用XML文件存储待传输文件,是通过将待传输文件进行压缩 后转换为字符串形式存储在XML文件中来实现的,这种方式存在诸多局限性:由于接收方 接收到XML文件后,需要读取该XML文件以获取其存储的文件内容,而当文件体积过大时, 其转换为的字符串较长,即字节数过多,而读取该字符串时需要将其先读取到内存中,一次 性读取该字符串会造成内存溢出。
[0004] 例如,招投标领域中要求提交的标书文件格式为XML文件,其中需要包含投标函、 法定代表人身份证明、授权委托书等多项材料的扫描件(通常为PDF格式的文件)的信息, 而将上述材料的扫描件转为字符串进行存储会造成XML格式的电子标书体积过大,电子开 评标系统需要读取该大体积的XML文件才能获得上述材料的的内容,而读取该大体积的 XML文件获取其内容极有可能造成系统内存溢出。

【发明内容】

[0005] 鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上 述问题的XML文件的生成方法、装置和系统。
[0006] 依据本发明的一个方面,提供了一种XML文件的生成方法,包括:将待传输的实体 文件放入第一文件夹中;建立第一XML文件,将第一文件夹中的各实体文件的目录信息写 入第一XML文件;将第一文件夹和第一XML文件压缩得到一个压缩包;将所述压缩包进行 加密处理得到相应的加密字符串;建立第二XML文件,将所述加密字符串写入第二XML文 件;将第二XML文件传输至接收方。
[0007] 可选地,所述将第一文件夹中的各实体文件的目录信息写入第一XML文件包括: 将第一文件夹中的各实体文件的目录信息写入第一XML文件中的一个存储节点或者多个 存储节点;所述实体文件的目录信息包括:实体文件的名称、文件格式信息、文件类型信 息、文件路径信息、文件签名信息、文件哈希值。
[0008] 可选地,所述将所述加密字符串写入第二XML文件包括:采用流方式将所述加密 字符串写入第二XML文件的指定节点中。
[0009] 可选地,所述待传输的实体文件是投标文件;该方法进一步包括:建立第三XML文 件,将投标文件的工程量清单写入第三XML文件,将第三XML文件放入第二文件中;将第一 文件夹、第二文件夹和第一XML文件压缩得到一个压缩包。
[0010] 可选地,该方法进一步包括接收方的如下处理:找到第二XML文件中的指定节点; 采用流方式从第二XML文件的所述指定节点中读取出加密字符串;对所述加密字符串进行 解密和解压缩处理后得到第一XML文件和第一文件夹。
[0011] 可选地,该方法进一步包括接收方的如下处理:采用流方式对第一XML文件和第 一文件夹中的实体文件进行读取/写入数据库的操作;其中,对每个待读/写文件,确定每 次读/写操作的数据量;获取该待读/写文件的起始位置和文件字段长度;根据所述每次 读/写操作的数据量,从所述起始位置分段读/写所述待读取文件。
[0012] 依据本发明的另一方面,提供了一种XML文件的生成装置,该装置包括:规划存储 单元,适于将待传输的实体文件放入第一文件夹中;以及建立第一XML文件,将第一文件夹 中的各实体文件的目录信息写入第一XML文件;压缩单元,适于将第一文件夹和第一XML文 件压缩得到一个压缩包;加密单元,适于将所述压缩包进行加密处理得到相应的加密字符 串;XML文件生成单元,适于建立第二XML文件,将所述加密字符串写入第二XML文件;发送 单元,适于将第二XML文件发送给接收方。
[0013] 可选地,所述规划存储单元,适于将第一文件夹中的各实体文件的目录信息写入 第一XML文件中的一个存储节点或者多个存储节点;所述实体文件的目录信息包括:实体 文件的名称、文件格式信息、文件类型信息、文件路径信息、文件签名信息、文件哈希值。
[0014] 可选地,所述XML文件生成单元,适于采用流方式将所述加密字符串写入第二XML 文件的指定节点中。
[0015] 可选地,所述待传输的实体文件是投标文件;所述规划存储单元,进一步适于建立 第三XML文件,将投标文件的工程量清单写入第三XML文件,将第三XML文件放入第二文件 中;所述压缩单元,适于将第一文件夹、第二文件夹和第一XML文件压缩得到一个压缩包。
[0016] 依据本发明的又一方面,提供了一种XML文件的传输系统,包括:XML文件接收装 置和如上述任一项所述的XML文件的生成装置;所述XML文件接收装置包括:接收单元,适 于接收XML文件的生成装置发送的第二XML文件;读取单元,适于找到第二XML文件中的指 定节点,采用流方式从第二XML文件的所述指定节点中读取出加密字符串;解密单元,适于 对所述加密字符串进行解密得到解密后的压缩包;解压缩单元,适于对所述压缩包进行解 压缩处理后得到第一XML文件和第一文件夹。
[0017] 可选地,所述XML文件接收装置还包括:入库单元,适于采用流方式对第一XML文 件和第一文件夹中的实体文件进行写入数据库的操作;所述读取单元,进一步适于采用流 方式对第一XML文件和第一文件夹中的实体文件进行读取操作;其中,对每个待读/写文 件,确定每次读/写操作的数据量;获取该待读/写文件的起始位置和文件字段长度;根据 所述每次读/写操作的数据量,从所述起始位置分段读/写所述待读取文件。
[0018] 由上述可知,本发明的技术方案,通过建立第一文件夹存储待传输文件,并建立第 一XML文件写入第一文件夹中的各实体文件的目录信息,建立了实体文件与XML文件节点 的关联存储,再将第一文件夹和第一XML文件压缩得到一个压缩包,并对压缩包进行加密 处理得到相应的加密字符串,将加密字符串写入建立的第二XML文件,便可以将第二XML文 件传输至接收方,接收方不需要完全读取第二XML文件的内容,只需要对加密字符串进行 解密操作,得到的第一XML文件起到了目录索引的作用,在第一XML文件中不存储实体文件 转换的字符串,通过读取文件体积很小的第一XML文件可以清楚明了地得知各实体文件的 存储路径,通过节点属性快速定位到实体文件,方便接收方正确快捷地获取实体文件,不需 读取直接存储实体文件内容的XML文件,不会出现系统内存溢出的问题。
[0019] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段, 而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够 更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0020] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通 技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明 的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0021] 图1示出了根据本发明一个实施例的一种XML文件的生成方法的流程图;
[0022] 图2示出了根据本发明一个实施例的一种XM
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1