资源文件的存储访问方法及装置的制作方法

文档序号:6581763阅读:216来源:国知局
专利名称:资源文件的存储访问方法及装置的制作方法
资源文件的存储访问方法及装置
技术领域
本发明涉及数据存储领域,更具体地说,涉及一种资源文件的存储访问方法及装置。
背景技术
随着互联网通信的不断发展,即时通讯anstant Messaging,简称“ IM”)软件已 经成为用户休闲娱乐和工作必不可少的软件。在IM软件中,对各种资源文件的访问非常频 繁,资源文件的不完整会给界面表现造成严重影响,而资源文件的访问速度也会影响到软 件的性能。当前的即时通讯工具通常采用复合文档对资源文件进行打包,即在发布IM软件 之前,把资源文件写入复合文档中,在IM软件运行期间,再从复合文档中把存储的资源文 件解析出来。然而,复合文档的内部格式非常复杂,资源文件作为只读文件,在打包写入复合文 档的过程中,会产生了大量的数据碎片,从而导致资源文件的访问速度低下。

发明内容基于此,有必要提供一种可实现快速访问的资源文件的存储访问方法。此外,还有必要提供一种可实现快速访问的资源文件的存储访问装置。一种资源文件的存储访问方法,所述存储方法包括获取资源文件目录,根据所述 资源文件目录生成资源文件映射表;根据所述资源文件映射表,建立资源打包文件的头结 构和索引区;根据所述资源文件映射表遍历资源文件,将资源文件数据打包至所述资源打 包文件中。优选的,所述资源文件映射表中记录了资源文件目录、资源文件数据在打包文件 中的偏移量和资源文件数据的大小。优选的,所述存储方法还包括根据打包的资源文件数据在打包文件中的偏移量, 更新索引区中的内容。优选的,所述头结构记录了资源打包文件的实现标识、资源文件中流的数量、索引 区的偏移量和索引区的大小;所述索引区记录了资源文件数据目录、资源文件数据在资源 打包文件中的偏移量和资源文件数据的大小。优选的,所述访问方法包括以下步骤打开资源打包文件,解析所述资源打包文件 的头结构;根据所述头结构,解析所述资源打包文件的索引区;根据所述索引区中的内容, 读取所述资源打包文件中的资源文件数据。一种资源文件的存储访问装置,所述装置包括存储器,所述存储器包括映射模 块,用于获取资源文件目录,根据所述资源文件目录生成资源文件映射表;数据构造模块, 用于根据所述资源文件映射表,建立资源打包文件头结构和索引区;数据打包模块,用于根 据所述资源文件映射表遍历资源文件,将资源文件数据打包至所述资源打包文件中。优选的,所述映射模块生成的资源文件映射表记录了资源文件目录、资源文件数据在资源打包文件中的偏移量和资源文件数据的大小。优选的,所述头结构记录了资源打包文件的实现标识、资源文件中流的数量、索引 区的偏移量和索引区的大小;所述索引区记录了资源文件数据目录、资源文件数据在资源 打包文件中的偏移量和资源文件数据的大小。优选的,所述存储器还包括数据更新模块,用于根据打包的资源文件数据在资源 打包文件中的偏移量,更新索引区内容。优选的,所述装置还包括访问所述资源打包文件的访问单元,所述访问单元包括 解析模块,用于打开资源打包文件,解析所述资源打包文件的头结构,并根据所述头结构, 解析所述资源打包文件的索引区;数据读取模块,用于根据所述索引区中的内容,读取所述 资源打包文件中的资源文件数据。上述资源文件的存储访问方法及装置,根据资源文件目录生成资源文件映射表, 并根据该资源文件映射表建立资源打包文件的头结构和索引区,根据资源文件映射表遍历 资源文件,则可将IM软件中需要的多个逻辑上不可分割的资源文件,即在IM软件程序中上 下文具有特定的逻辑含义并且是相互关联的多个可利用的数据文件(如图像、音频和视频 文件),可以打包成一个有机整体。访问资源文件时,根据头结构和索引区即可读取资源打 包文件中的资源文件数据,实现了资源文件的快速访问。

图1是一个实施例中资源文件的存储方法的流程图;图2是一个实例中资源打包文件的格式的示意图;图3是一个实施例中资源文件的访问方法的流程图;图4是一个实施例中资源文件的存储访问装置的结构示意图;图5是另一个实施例中存储器的内部结构示意图;图6是一个实施例中访问单元的内部结构示意图。
具体实施方式图1示出了一个实施例中资源文件的存储方法的流程,具体过程如下在步骤SlOO中,获取资源文件目录,根据所述资源文件目录生成资源文件映射 表。在一个实施方式中,资源文件映射表记录了资源文件目录、资源文件数据在资源打包文 件中的偏移量和资源文件数据的大小。在步骤S102中,根据资源文件映射表,建立资源打包文件的头结构和索引区。在 一个实施方式中,资源打包文件的格式如图2所示,包括头结构、索引区和数据区三个部 分,资源打包文件是一种只读文件。头结构记录了资源打包文件的实现标识、资源文件中流 的数量、索引区的偏移量和索引区的大小。资源打包文件的实现标识用于标识打包文件的 格式,资源文件中流的数量记录了资源文件包中所打包的资源文件的数量。索引区记录了 资源文件数据目录、资源文件数据在资源打包文件中的偏移量和资源文件数据的大小。在步骤S104中,根据资源文件映射表遍历资源文件,将资源文件数据打包至资源 打包文件中。在一个实施方式中,将资源文件数据进行打包后,更新索引区的内容。具体地,是根据打包的资源文件数据在资源打包文件中的偏移量,更新索引区内容。上述方法建立了资源打包文件,该资源打包文件包括头结构、索引区和数据区,将 资源文件数据打包存储于资源打包文件的数据区中,则可将IM软件中需要的多个逻辑上 不可分割的资源文件,即在IM软件程序中上下文具有特定的逻辑含义并且是相互关联的 多个可利用的数据文件(如图像、音频和视频文件),打包成一个有机整体,不需要对资源 文件进行任何改变,从而避免了资源文件的不完整所带来的界面混乱,极大的便利了软件 对只读的资源文件的管理。图3示出了一个实施例中资源文件的访问方法的流程,具体过程如下在步骤S200中,打开资源打包文件,解析所述资源打包文件的头结构。在步骤S202中,根据所述头结构,解析所述资源打包文件的索引区。由于头结构 中记录了索引区偏移量,根据头结构即可获取索引区中的内容,索引区中的内容包括资源 文件数据的偏移量,该偏移量即表明了打包后资源文件数据在数据区中的存储位置。在步骤S204中,根据所述索引区中的内容,读取所述资源打包文件中的资源文件 数据。由于IM软件中的资源文件打包于资源打包文件中,访问时,通过解析资源打包文 件的头结构和索引区,并根据索引区中的内容读取资源打包文件中的资源文件数据,从而 实现了资源文件的快速访问,提升了用户的软件体验。资源文件的存储访问装置包括存储器100及对存储器100的打包文件进行数据访 问的访问单元200。图4示出了一个资源文件的存储器100,其中存储器100包括映射模块120、数据构造模块140和数据打包模块160,其中映射 模块120用于生成资源文件映射表;数据构造模块140用于建立资源打包文件的头结构和 索引区;数据打包模块160用于将资源文件数据打包至资源打包文件中。在一个实施方式中,映射模块120获取资源文件目录,根据资源文件目录生成资 源文件映射表,所生成的资源文件映射表记录了资源文件目录、资源文件数据在资源打包 文件中的偏移量和资源文件数据的大小。在一个实施方式中,数据构造模块140根据资源文件映射表,建立资源打包文件 的头结构和索引区。资源打包文件包括头结构、索引区和数据区三个部分。头结构记录了 资源打包文件的实现标识、资源文件中流的数量、索引区的偏移量和索引区的大小。资源打 包文件的实现标识用于标识打包文件的格式,资源文件中流的数量记录了资源文件包中所 打包的资源文件的数量。索引区记录了资源文件数据目录、资源文件数据在资源打包文件 中的偏移量和资源文件数据的大小。在一个实施方式中数据打包模块160根据资源文件映射表遍历资源文件,将资源 文件数据打包至资源打包文件中。图5示出了另一个实施例中资源文件的存储器100,在一个实施方式中存储器100 除了包括上述映射模块120、数据构造模块140和数据打包模块160外,还包括数据更新模 块180。数据更新模块180在资源文件进行打包后,更新索引区的内容,具体地,是根据打包 的资源文件数据在资源打包文件中的偏移量,更新索引区内容。图6示出了 一个实施例中的访问单元200,访问单元200包括解析模块220和数据 读取模块M0,其中解析模块220用于解析资源打包文件的头结构;数据读取模块240用
5于读取资源打包文件中的资源文件数据。在一个实施方式中,解析模块220首先打开资源打包文件,解析资源打包文件的 头结构,然后根据头结构解析资源打包文件的索引区。由于头结构中记录了索引区偏移量, 可根据头结构即可获取索引区中的内容,索引区中的内容包括资源文件数据的偏移量,该 偏移量即表明了打包后资源文件数据在数据区中的存储位置。在一个实施方式中,数据读取模块240根据索引区中的内容,读取资源打包文件 中的资源文件数据。资源文件的存储访问装置将资源文件数据打包存储于资源打包文件的数据区中, 不需要做任何的改变,访问时只需解析文件包即可读取资源文件数据,从而提升了资源文 件的存储和访问速度。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种资源文件的存储访问方法,所述存储方法包括获取资源文件目录,根据所述资源文件目录生成资源文件映射表; 根据所述资源文件映射表,建立资源打包文件的头结构和索引区; 根据所述资源文件映射表遍历资源文件,将资源文件数据打包至所述资源打包文件中。
2.根据权利要求1所述的资源文件的存储访问方法,其特征在于,所述资源文件映射 表中记录了资源文件目录、资源文件数据在打包文件中的偏移量和资源文件数据的大小。
3.根据权利要求1所述的资源文件的存储访问方法,其特征在于,所述存储方法还包 括根据打包的资源文件数据在打包文件中的偏移量,更新索引区中的内容。
4.根据权利要求1所述的资源文件的存储访问方法,其特征在于,所述头结构记录了 资源打包文件的实现标识、资源文件中流的数量、索引区的偏移量和索引区的大小;所述索 引区记录了资源文件数据目录、资源文件数据在资源打包文件中的偏移量和资源文件数据 的大小。
5.根据权利要求1所述的资源文件的存储访问方法,其特征在于,所述访问方法包括 以下步骤打开资源打包文件,解析所述资源打包文件的头结构;根据所述头结构,解析所述资源打包文件的索引区;根据所述索引区中的内容,读取所述资源打包文件中的资源文件数据。
6.一种资源文件的存储访问装置,其特征在于,所述装置包括存储器,所述存储器包括 映射模块,用于获取资源文件目录,根据所述资源文件目录生成资源文件映射表; 数据构造模块,用于根据所述资源文件映射表,建立资源打包文件头结构和索引区; 数据打包模块,用于根据所述资源文件映射表遍历资源文件,将资源文件数据打包至所述资源打包文件中。
7.根据权利要求6所述的资源文件的存储访问装置,其特征在于,所述映射模块生成 的资源文件映射表记录了资源文件目录、资源文件数据在资源打包文件中的偏移量和资源 文件数据的大小。
8.根据权利要求6所述的资源文件的存储访问装置,其特征在于,所述头结构记录了 资源打包文件的实现标识、资源文件中流的数量、索引区的偏移量和索引区的大小;所述索 引区记录了资源文件数据目录、资源文件数据在资源打包文件中的偏移量和资源文件数据 的大小。
9.根据权利要求6所述的资源文件的存储访问装置,其特征在于,所述存储器还包括 数据更新模块,用于根据打包的资源文件数据在资源打包文件中的偏移量,更新索引区内容。
10.根据权利要求6所述的资源文件的存储访问装置,其特征在于,所述装置还包括访 问所述资源打包文件的访问单元,所述访问单元包括解析模块,用于打开资源打包文件,解析所述资源打包文件的头结构,并根据所述头结 构,解析所述资源打包文件的索引区;数据读取模块,用于根据所述索引区中的内容,读取所述资源打包文件中的资源文件 数据。
全文摘要
一种资源文件的存储访问方法,所述方法包括以下步骤获取资源文件目录,根据所述资源文件目录生成资源文件映射表;根据所述资源文件映射表,建立资源打包文件的头结构和索引区;根据所述资源文件映射表遍历资源文件,将资源文件数据打包至所述资源打包文件中。上述资源文件的存储访问方法,根据资源文件目录生成资源文件映射表,并根据该资源文件映射表建立资源打包文件的头结构和索引区,根据资源文件映射表遍历资源文件,则可将IM软件中需要的多个逻辑上不可分割的资源文件打包成一个有机整体。访问资源文件时,根据头结构和索引区即可读取资源打包文件中的资源文件数据,实现了资源文件的快速访问。
文档编号G06F17/30GK102073633SQ200910194090
公开日2011年5月25日 申请日期2009年11月23日 优先权日2009年11月23日
发明者于长青, 栾涛, 邓立波 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1