资源管理数据包文件格式及资源管理方法技术

技术编号:2844889 阅读:270 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及资源管理的方法,尤其涉及在使用多个资源的应用程序中为有效地管理资源的数据包文件格式及其对应的资源管理方法。依据本发明专利技术由于数据包文件格式由作为根目录节点的子目录的子目录节点和包含上述根目录或子目录内的资源数据内容的文件节点构成,从而具有比较容易管理资源和容易开发应用程序的效果。

【技术实现步骤摘要】

本专利技术涉及资源管理的方法,特别是使用大量资源的应用程序中为有效地管理资源的数据包文件格式及其资源管理的方法。
技术介绍
视窗(Windows)的应用程序(Application)大体上可以分为资源部(Resource part)和执行部(Executable part)。上述的资源在所有应用程序中都使用,也就是意味着在对话(Dialog)视窗中网罗了在执行部中使用的各种字符串(String)、位图(Bitmap)、一般数据等所有数据。通常在应用程序中使用资源的方法主要使用两种,包含在资源部中作为一个执行文件来使用的方法以及将资源分离成不同用途的文件的方法。这种方法在附图的图1和图2中示出。图1是使用传统技术应用程序的资源部的方法的示意图。如图1所示,应用程序3中,执行部1和资源部2是同时进行管理的形式,为了利用资源,执行部1中直接读取并执行资源部2的数据。这种方法的优点是,执行文件管理简单,用户可以任意修改,而不会引起执行文件的非正常执行,由于具备以上的优点,故该种方法曾经被广泛使用。另一方面,最近由于对具有灵活性(Flexible)的应用程序的必要性和多国语言支持,所以将资源分离成不同用途文件是一般趋势。图2是说明根据传统技术利用另外的资源文件的方法的示意图。如图2所示,采用的方法是,放置将资源以文件形式进行管理的资源文件2,在应用程序3中以文件形式读取并执行。这种方法的优点是,资源可以容易修改,可以用户化,资源更新简便,可以支持多语言,或者支持多种皮肤。但是,如附图1的方法的缺点是资源数量越多就越难以进行管理,图2方法的缺点是在文件系统的特性上不能有效地使用储存空间。
技术实现思路
因此,本专利技术的目的是为了解决上述传统技术的问题而提出,提供在应用程序中使用多种多样的资源和更新便捷、操作简单的资源管理方法。本专利技术的其它目的是提供无需修改源代码而能够进行作为其它位置的资源的操作的资源管理方法。为了实现上述目的,依据本专利技术,资源管理的数据包文件格式的特征在于包括根目录节点、上述根目录节点的子目录的子目录节点以及包含上述根目录或子目录内的资源数据内容的文件节点。上述目录节点的特征在于,其由节点数目表示部分和包含上述子节点数相应的子节点信息的项目部分组成。上述项目部分的特征在于,其由区分上述子节点是目录还是文件的区分部分、上述子节点名称长度的表示部分、上述节点名称的表示部分以及表示上述节点位置的偏移部分构成。上述文件节点的特征在于,其由文件长度表示部分和包含实际数据的文件内容部分构成。依据本专利技术,将目录结构变换为数据包格式文件的方法,其特征在于,其包括第1阶段,将用户指定的目录设定为作业目录;第2阶段,针对上述设定的作业目录生成一个节点(当前节点);第3阶段,在上述当前节点的项目是目录的情况下则生成一个目录节点,并作为子节点登记,将上述当前节点设置为作业目录,从第2阶段开始重复;第4阶段,在上述当前节点的项目是文件的情况下则生成一个文件节点并作为子节点登记后,将文件长度书写部分和文件记录书写部分的相加值设定为子节点大小;第5阶段,与上述项目的种类无关,将项目信息记录部分与上述当前节点相加;第6阶段,将表示子节点数目的字节与上述当前节点的大小相加;第7阶段,记录上述数据包文件的文件头部分和元数据部分,用上述文件头长度和元数据的值对偏移进行初始化,然后计算偏移;第8阶段,在上述生成的节点是目录节点的情况下则记录节点的数目、子节点是目录还是文件、目录名称、计算的偏移;第9阶段,在上述生成的节点是文件的情况下,则记录文件大小和文件内容。上述偏移是将子节点的大小与当前偏移的相加值。依据本专利技术,推出资源管理者应实现的数据包文件中期望文件的方法,其特征在于,其包括第1阶段,接收路径输入,记忆目录或文件名称;第2阶段,通过上述数据包文件中包含的信息,记忆子节点的数目、子节点是目录还是文件、子节点的名称;第3阶段,判断上述记忆的子节点名称与上述目录或文件名称是否一致;第4阶段,在上述判断结果为一致的情况下,判断子节点是目录还是文件;第5阶段,在上述判断结果是目录的情况下,则求出偏移,再按偏移进行移动,然后从上述输入接收路径中删除当前目录名称,从第1阶段开始重复;第6阶段,在上述判断结果是文件的情况下,将文件内容储存在阵列中,然后返回。其特征在于,其还包括在上述第3阶段中判断结果为不一致的情况下则从第2阶段开始重复的阶段。其特征在于,其还包括在上述重复结果、重复次数超过上述记忆的子节点的数目的情况下则返回错误码的阶段。通过上述说明可知,依据本专利技术的资源管理方法具有如下效果。第一,将资源与应用程序分离,从而方便对资源的管理;将资源数据包分离,制作成其它的实用程序,资源的生成、测试及数据包等操作交由设计人员操作,从而方便应用程序的开发。第二,对资源的访问与对普通文件访问的全部路径相同,可以不对资源进行逐个打包,即使不修改获得应用程序资源的部分,只通过资源管理人员的操作设定就可以从目录和数据包文件中获得希望位置上的资源,方便了应用程序的开发。第三,将所有的资源放入一个文件中,方便了资源的管理;无需改动目录的结构就可以实现对目录的支持,可以实现希望的分类。第四,由于对分成目录的资源进行原样打包,所以非常直观;也可以直接使用打包前按照操作制成了文件的资源。第五,文件系统位于存储器内,对文件访问的速度快,在嵌入式操作系统(由于存储器限制,随着文件的增多,会出现分割现象,嵌入式操作系统不受这种情况的影响)环境中用途更大。附图说明图1是根据传统技术的使用应用程序的资源部的方法的示意图。图2是根据传统技术的使用另外的资源文件的的方法的示意图。图3是本专利技术中的数据包文件的结构示意图。图4是本专利技术中的目录节点结构示意图。图5是本专利技术中的文件节点结构示意图。图6是依据本专利技术将目录结构转换成数据包格式的过程示意流程图。图7是依据本专利技术的从数据包文件中推出期望文件的方法的示意流程图。附图主要标记说明1执行部 2资源部3应用程序具体实施方式下面参照附图对本专利技术的实施例进行详细说明。图3是本专利技术中的数据包文件结构示意图。如图3所示,子目录信息和实际文件内容混合存在于数据包文件中。即,数据包文件中包括文件头部分、著作权及其它附属信息的元数据部分、根目录节点、上述根目录的子目录节点和包含实际资源数据内容的特定文件节点等。在生成上述数据包文件时,如果使用最佳适应算法BFS(breadthfirst Search),给目录节点上赋予优先顺序,将目录节点都放到前面,可以提高管理效率。具有上述结构的数据包文件为获得特定位置上的文件,首先读取根目录的信息,然后再读取子目录的信息,如此反复,如果到达文件节点则读取相关节点的内容。例如,为了读取“package\Sub\file”文件,先在根目录是找到package目录节点,读取相关节点的偏移值,将文件点移动到相关位置;再找到Sub目录节点,读取相关节点的偏移,将文件点移动到相关位置;再读取file文件节点的信息,按偏移,将文件点移动到相关位置后读取文件的长度,再读取与该长度文件相适应的数据,最后返回。图4是本专利技术中目录节点结构示意图,图5是本专利技术中文件节点结构示意图。如图4所示,本专利技术中的目录节点由2字节的子本文档来自技高网
...

【技术保护点】
资源管理数据包文件格式,其特征在于,其包括:根目录节点,作为上述根目录节点的子目录的子目录节点,和包含上述根目录或子目录数据内的资源数据内容的文件节点。

【技术特征摘要】
1.资源管理数据包文件格式,其特征在于,其包括根目录节点,作为上述根目录节点的子目录的子目录节点,和包含上述根目录或子目录数据内的资源数据内容的文件节点。2.如权利要求项1所述的资源管理数据包文件格式,其特征在于,上述目录节点包括表示子节点数目的部分,和包含与上述子节点数目相应的子节点信息的项目部分。3.如权利要求项2所述的资源管理数据包文件格式,其特征在于,上述项目部分由以下部分构成区分上述子节点是目录还是文件的区分部分,上述子节点名称的长度的表示部分,上述子节点名称表示部分,和表示上述子节点位置的偏移部分。4.如权利要求项1中所述的资源管理数据包文件格式,其特征在于,上述文件节点包括表示文件长度的部分,和包含有实际数据的文件内容部分。5.资源管理方法,即将目录结构变换为数据包格式文件的方法,其特征在于,其包括第1阶段,将用户指定的目录设定为作业目录;第2阶段,针对上述设定的作业目录生成一个节点(当前节点);第3阶段,如果上述当前节点的项目是目录,则生成一个目录节点,并作为子节点登记,将上述当前节点设置为作业目录,从第2阶段开始重复;第4阶段,在上述当前节点的项目是文件的情况下生成一个文件节点,作为子节点登记后将文件长度书写部分和文件记录书写部分的相加值设定为子节点大小;第5阶段,与上述项目的种类无关,将项目信息记录部分加入上述当前节点;第6阶段,将子节点数目表示字节与当前节点的大小相加;第7...

【专利技术属性】
技术研发人员:张泽洙
申请(专利权)人:乐金电子昆山电脑有限公司
类型:发明
国别省市:32[中国|江苏]

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

1