一种文件内容定位的方法和装置的制作方法

文档序号:6584656阅读:157来源:国知局
专利名称:一种文件内容定位的方法和装置的制作方法
技术领域
本发明涉及文件处理领域,特别是涉及一种文件内容定位的方法和装置。
背景技术
在日常工作中,需要频繁应用到文件,这就要求在一个文件中快速定位到特定内 容并进行修改编辑。如果文件本身比较小,定位工作是很容易完成的。以文本类的文件为 例,可以在打开文件后,再进行搜索、定位到文件内部的某个字、词等内容。但是将上述定位方法应用于大文件时,装载文件本身就需要花费很长时间。以字 幕工程文件为例,通常由大量的场景组成的工程文件,往往占用很大的磁盘空间,例如,占 用几百兆,甚至几个G的空间。假设某个工程文件有1200个场景,并按存放顺序用数字1, 2,3,..., 1200对这些场景进行编号,这样,用户想编辑100-150场景时,需要先打开整个工 程文件,然后再进行搜索、定位到工程文件内部的所述50个场景,最后才进行编辑工作。因 此,上述定位方法不能满足用户对定位速度的要求。总之,需要本领域技术人员迫切解决的一个技术问题就是如何能够提供一种文 件内容定位的方法,能够快速、有效地定位到文件内部的某个或多个文件片段。

发明内容
本发明所要解决的技术问题是提供一种文件内容定位的方法和装置,用以快速、 有效地定位到文件内部的某个或多个文件片段。为了解决上述问题,本发明公开了一种文件内容定位的方法,包括保存文件时,为该文件生成伴侣文件,所述伴侣文件包括针对多个文件片段的偏 移地址和预览数据;选定文件时,依据伴侣文件对所述多个文件片段进行预览;从预览的多个文件片段中选择所需的文件片段,并获取所述文件片段对应的偏移 地址;根据偏移地址,装载相应文件片段的内容。优选的,所述文件包括多个文件片段;所述伴侣文件的生成步骤包括为每个文件片段生成映射记录,所述映射记录包括每个文件片段的编号、起始位 置、终止位置和快照;组合所有文件片段的映射记录,得到伴侣文件。优选的,所述装载步骤为,打开该文件,并根据偏移地址,定位到文件内部的某个 文件片段,或者,根据偏移地址,只打开所需的文件片段。优选的,所述预览步骤包括在文件打开窗口中选定该文件时,在窗口周围区域显示伴侣文件中每个文件片段 的快照。
优选的,在装载步骤前,还包括读取文件头信息;所述装载步骤包括依据偏移地址和读取到的文件头信息,装载相应文件片段的 内容。本发明还公开了一种文件内容定位装置,包括生成模块,用于保存文件时,为该文件生成伴侣文件,所述伴侣文件包括针对多个 文件片段的偏移地址和预览数据;预览模块,用于在选定文件时,依据伴侣文件对所述多个文件片段进行预览;获取模块,用于从预览的多个文件片段中选择所需的文件片段,并获取所述文件 片段对应的偏移地址;装载模块,用于根据偏移地址,装载相应文件片段的内容。优选的,所述生成模块包括映射记录生成单元,用于在文件包括多个文件片段时,为文件中的每个文件片段 生成映射记录,所述映射记录包括每个文件片段的编号、起始位置、终止位置和快照;组合单元,用于组合所有片段的映射记录,得到伴侣文件。优选的,所述预览模块包括窗口展示单元,用于在文件打开窗口中选定该文件时,在窗口周围区域显示伴侣 文件中每个文件片段的快照。优选的,还包括读取模块,用于读取文件头信息;所述装载模块,用于依据偏移地址和读取到的文件头信息,装载相应文件片段的 内容。与现有技术相比,本发明具有以下优点本发明在保存文件时,为该文件自动生成伴侣文件,由于该文件是由多个独立的 文件片段组成的,而所述伴侣文件中包括了针对所述多个文件片段的预览数据和偏移地 址,故所述预览数据具有区分不同文件片段的能力,所述偏移地址指向文件片段的位置,因 此,用户看到伴侣文件中多个文件片段的预览数据,就能够确定所需的文件片段,而在选择 所需的文件片段后,可以自动获取所述文件片段对应的偏移地址,从而依据所述偏移地址 对所需文件片段进行装载。这样,在定位所需的文件片段时,无需打开整个文件,只装载所 述文件片段就可以完成定位工作,能够减少定位过程中耗费的时间,提高定位效率,从而方 便用户进行文件片段的快速、有效定位;其次,在对装载后的所需文件片段进行编辑的过程中,本发明可以陆续装载文件 中的其它文件片段,能够满足用户不断更新的定位需求;再者,在对当前文件进行编辑的过程中,本发明可以陆续装载其它文件中的文件 片段,因而可以满足用户不断更新的编辑需求。


图1是本发明一种文件内容定位方法实施例的流程图;图2是本发明一种文件内容定位装置实施例的结构图。
具体实施例方式为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实 施方式对本发明作进一步详细的说明。既然文件中的多个文件片段之间是相互独立的,那么,在用户定位某个文件片段 时,无需打开整个文件,只装载该文件片段就可以完成定位工作。而在实际中获知文件片段 的位置,就可以装载某个文件片段。因此,本专利发明人创造性地提出了本发明实施例的核心构思之一,即在保存文 件时,自动将文件中每个文件片段的地址记录到伴侣文件,相应地,该伴侣文件中还记录了 每个文件片段的预览数据,这样,用户通过选定文件,预览伴侣文件中多个文件片段的预览 数据时,就能确定哪个文件片段是所需的,从而通过在所需文件片段的位置读取内容,来实 现装载所需文件片段的目的。参照图1,示出了本发明一种文件内容定位方法实施例的流程图,具体可以包括步骤101、保存文件时,为该文件生成伴侣文件,所述伴侣文件包括针对多个文件 片段的偏移地址和预览数据;本发明采用在保存文件时生成所述伴侣文件,也即在存盘过程中生成伴侣文件, 既能保证伴侣文件中的内容是最新的,又不会错过在重新打开文件时为用户展示的时机。上面提到,用户看到伴侣文件中多个文件片段的预览数据,就应该能够确定哪个 文件片段是所需的,因此,只有具备一定的区别能力,预览数据才能将一个文件片段与其它 文件片段区别开来。而文件中的多个文件片段是相互独立且不同的,所以,针对多个文件片 段获取的预览数据能够满足区别能力的要求。以“*. ppt"文本文件为例,文件由多个幻灯片组成,这些幻灯片之间相互独立,且 每个幻灯片包括若干标题和文本,如主标题、副标题、文本1、文本2等。由于通常的幻灯片 具有一个或多个文本框,因而占用较大的磁盘空间,而文本框里的内容只是单纯的文本,不 会占用多大空间,因此,在实际中,可以基于文本框内容,获取得到幻灯片的预览数据。一个 简便的方式,可以为直接将相应的“大纲”直接作为某个幻灯片的预览数据。本发明采用偏移地址来指向文件中文件片段的位置。在实际中,所述偏移地址可 以从文件头算起,也可以从已知位置算起,本发明对此不加以限制。在本发明的一种优选实施例中,对于由多个文件片段组成的文件,其伴侣文件的 生成步骤可以包括以下子步骤子步骤Al、为每个文件片段生成映射记录,所述映射记录包括每个文件片段的编 号、起始位置、终止位置和快照;前面提到,文件片段的快速定位,要求伴侣文件中包括具有区别能力的预览数据, 以及来指向文件中文件片段的位置的偏移地址,因此,本发明采用一对多映射的方式,也即 对每个片段进行映射,得到包括预览数据和偏移地址的映射记录。在具体实现中,由于图元能起到醒目效果,本发明的预览数据优先采用图元形式 的快照。而采用起始位置和终止位置来描述某个文件片段相对于文件头的偏移地址。在实 际中,所述起始位置和终止位置可以由fseek(FILE*stream,long offset, int origin)获 得,其中,第一个参数stream为文件指针,offset为偏移,比如文件片段的起始位置为文件 的第10000个字节,offset就应该为10000,origin用于标志从文件头算起还是从文件末尾算起。以包括100个幻灯片的“*. ppt”文本文件为例,第10个幻灯片的映射记录可以包 括该幻灯片在文件中的编号10、起始位置、终止位置和快照。子步骤A2、组合所有文件片段的映射记录,得到伴侣文件。在字幕机应用环境下,应用的工程文件是由多个场景组成的,这些场景之间相互 独立,且每个场景里包括若干个字幕元素,例如,带有各种特技效果的文字、图形等。在这种 环境下,所述伴侣文件的生成步骤可以包括子步骤Bi、为每个场景生成映射记录;例如,某个工程文件有1200个场景,那么第5个场景的映射记录可以包括该场景 在工程文件中的编号5、该场景的起始位置和终止位置、该场景的快照。其中,所述起始位置 和终止位置可以为该场景相对于该工程文件文件头的偏移位置(offset),所述快照可以为 对该场景进行压缩得到的图元(Icon),例如,快照大小可以为32X32,64X64等。子步骤B2、组合所有场景的映射记录,得到伴侣文件。对于上述示例来说,所述工程文件的伴侣文件中包括了 100条映射记录。步骤102、选定文件时,依据伴侣文件对所述多个文件片段进行预览;本步骤是将伴侣文件中多个文件片段的预览数据,展示给用户。在具体实现中,由于快照以图元形式保存,而图元能起到醒目效果,因此本发明优 先展示给用户图元形式的快照。例如,某个工程文件有100个场景,那么用户在选定该工程 文件时,可以看到所述100个场景的快照。对应于悬浮展示的情形,所述预览步骤可以包括在鼠标指向该文件时,在鼠标周围区域悬浮展示伴侣文件中每个文件片段或场景 的快照。例如,在资源管理器中,当鼠标指向“新建文件”工程文件时,相应的伴侣文件中的 快照就会悬浮于鼠标的右下方。对应于窗口展示的情形,所述预览步骤可以包括在文件打开窗口中选定该文件时,在窗口周围区域显示伴侣文件中每个文件片段 或场景的快照。例如,在“打开”窗口中,单键选中“新建文件2”文件,伴侣文件中的所有文件片段 或场景的快照就会显示在窗口的正下方。在具体实现中,有这样一种情形,对于具有多个场景(例如100个场景)的工程文 件来说,普通尺寸的显示屏是无法同时显示所有场景的快照的,因此,本发明在预览时,可 以采取拖动显示的方式,例如,以10个场景为显示间隔,首先显示前10个场景,然后在第η 次拖动鼠标时,显示10η+1 10(n+l)个场景。步骤103、从预览的多个文件片段中选择所需的文件片段,并获取所述文件片段对 应的偏移地址;在实际中,所述选择操作可以为,根据需要从预览的多个文件片段中选择一个或 多个文件片段,其中,在选择多个文件片段时,所述多个文件片段的编号可以连续,也可以 离散,本发明对此不加以限制。步骤104、根据偏移地址,装载相应文件片段的内容。
由于所述偏移地址可以为相对于文件头的偏移位置(offset),也可以为相对于已 知位置的offset,所以,在装载时,还需要读取文件头信息或已知位置,以获得需要装置的 文件片段的绝对位置。对应于偏移地址为相对于文件头的offset的情形,在本发明的一种优选实施例 中,在步骤104前,还可以包括读取文件头信息的步骤;在这种情况下,所述装载操作可以为,依据偏移地址和读取到的文件头信息,装载 相应文件片段的内容。所述装载步骤针对的情形包括打开该文件,并根据偏移地址,定位到文件内部的 某个文件片段,以及,根据偏移地址,只打开选择的所需文件片段。对于“*. ppt"文本文件,其占用的磁盘空间,从几兆到几十兆不等,打开一个完整 的文件不需要花费多长时间。此外,虽然文件中的多个幻灯片之间相互独立,它们之间的内 容还是有一定关联的,用户在编辑某个幻灯片时,需要时不时地往前翻看或者往后找。因 此,在本发明的一种优选实施例中,所述装载步骤可以为,打开整个文件,并根据偏移地址, 定位到文件内部的某个文件片段。对于字幕工程文件,其往往占用很大的磁盘空间,例如,占用几百兆,甚至几个G 的空间,打开整个文件需要几分钟的时间。此外,文件中的多个场景之间是相互独立的,以 一期综艺节目的字幕工程文件为例,其场景内容大概为主持人字幕场景和嘉宾字幕场景的 综合,而某个主持人在某一时刻的字幕场景与前后的场景之间是没有关联的。因此,在本发 明的一种优选实施例中,所述装载步骤可以为,根据偏移地址,只打开所需的场景。本发明在保存文件时,为该文件自动生成伴侣文件,由于该文件是由多个独立的 文件片段组成的,而所述伴侣文件中包括了针对所述多个文件片段的预览数据和偏移地 址,故所述预览数据具有区分不同文件片段的能力,所述偏移地址指向文件片段的位置,因 此,用户看到伴侣文件中多个文件片段的预览数据,就能够确定所需的文件片段,而在选择 所需的文件片段后,可以自动获取所述文件片段对应的偏移地址,从而依据所述偏移地址 对所需文件片段进行装载。这样,在定位所需的文件片段时,无需打开整个文件,只装载所 述文件片段就可以完成定位工作,能够减少定位过程中耗费的时间,提高定位效率,从而方 便用户进行文件片段的快速、有效定位。可以理解,在对装载后的所需文件片段进行编辑的过程中,如果还有查看其它未 装载的文件片段的需求,这时,在当前文件的“打开”窗口中,通过重复执行步骤102-104,可 以陆续装载文件中的文件片段,从而能够满足不断更新的定位需求。此外,如果在编辑过程中,还有查看其它文件中的文件片段的需求,这时,可以在 当前文件的“打开”窗口中,通过重复执行步骤102-104,来陆续装载其它文件中的文件片 段,以满足不断更新的查看需求。本发明对具体的装载数据和装载次数不加以限制。参照图2,示出了本发明一种文件内容定位装置实施例的结构图,具体可以包括生成模块201,用于保存文件时,为该文件生成伴侣文件,所述伴侣文件包括针对 多个文件片段的偏移地址和预览数据;对于由多个文件片段组成的文件,在本发明的一种优选实施例中,所述生成模块 201可以包括映射记录生成单元211,用于在文件包括多个文件片段时,为文件中的每个文件片段生成映射记录,所述映射记录包括每个文件片段的编号、起始位置、终止位置和快照;组合单元212,用于组合所有片段的映射记录,得到伴侣文件。预览模块202,用于在选定文件时,依据伴侣文件对所述多个文件片段进行预览;在具体实现中,对应于悬浮展示的情形,所述预览模块可以包括悬浮展示单元,用于在鼠标指向该文件时,在鼠标周围区域悬浮展示伴侣文件中 每个文件片段或场景的快照。对应于窗口展示的情形,所述预览模块可以包括窗口展示单元221,用于在文件打开窗口中选定该文件时,在窗口周围区域显示伴 侣文件中每个文件片段或场景的快照。获取模块203,用于从预览的多个文件片段中选择所需的文件片段,并获取所述文 件片段对应的偏移地址;本发明采用偏移地址来指向文件中文件片段的位置。在实际中,所述偏移地址可 以从文件头算起,也可以从已知位置算起,本发明对此不加以限制。装载模块204,用于根据偏移地址,装载相应文件片段的内容。对应于偏移地址为相对于文件头的offset的情形,在本发明的一种优选实施例 中,所述装置还可以包括读取模块205,用于读取文件头信息;这种情形下,所述装载模块用于依据偏移地址和读取到的文件头信息,装载相应 文件片段的内容。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与 其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统实施例 而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部 分说明即可。本发明可以应用于“*.ppt”文本文件、工程文件等由多个文件片段组成的文件,用 于快速定位文件中的文件片段。以上对本发明所提供的一种文件内容定位的方法和装置,进行了详细介绍,本文 中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮 助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思 想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对 本发明的限制。
权利要求
1.一种文件内容定位的方法,其特征在于,包括保存文件时,为该文件生成伴侣文件,所述伴侣文件包括针对多个文件片段的偏移地 址和预览数据;选定文件时,依据伴侣文件对所述多个文件片段进行预览;从预览的多个文件片段中选择所需的文件片段,并获取所述文件片段对应的偏移地址;根据偏移地址,装载相应文件片段的内容。
2.如权利要求1所述的方法,其特征在于,所述文件包括多个文件片段; 所述伴侣文件的生成步骤包括为每个文件片段生成映射记录,所述映射记录包括每个文件片段的编号、起始位置、终 止位置和快照;组合所有文件片段的映射记录,得到伴侣文件。
3.如权利要求2所述的方法,其特征在于,所述装载步骤为,打开该文件,并根据偏移 地址,定位到文件内部的某个文件片段,或者,根据偏移地址,只打开所需的文件片段。
4.如权利要求2所述的方法,其特征在于,所述预览步骤包括在文件打开窗口中选定该文件时,在窗口周围区域显示伴侣文件中每个文件片段的快照。
5.如权利要求1所述的方法,其特征在于,在装载步骤前,还包括读取文件头信息; 所述装载步骤包括依据偏移地址和读取到的文件头信息,装载相应文件片段的内容。
6.一种文件内容定位装置,其特征在于,包括生成模块,用于保存文件时,为该文件生成伴侣文件,所述伴侣文件包括针对多个文件 片段的偏移地址和预览数据;预览模块,用于在选定文件时,依据伴侣文件对所述多个文件片段进行预览; 获取模块,用于从预览的多个文件片段中选择所需的文件片段,并获取所述文件片段 对应的偏移地址;装载模块,用于根据偏移地址,装载相应文件片段的内容。
7.如权利要求6所述的装置,其特征在于,所述生成模块包括映射记录生成单元,用于在文件包括多个文件片段时,为文件中的每个文件片段生成 映射记录,所述映射记录包括每个文件片段的编号、起始位置、终止位置和快照; 组合单元,用于组合所有片段的映射记录,得到伴侣文件。
8.如权利要求7所述的装置,其特征在于,所述预览模块包括窗口展示单元,用于在文件打开窗口中选定该文件时,在窗口周围区域显示伴侣文件 中每个文件片段的快照。
9.如权利要求6所述的装置,其特征在于,还包括 读取模块,用于读取文件头信息;所述装载模块,用于依据偏移地址和读取到的文件头信息,装载相应文件片段的内容。
全文摘要
本发明提供了一种文件内容定位的方法和装置,其中的方法具体包括保存文件时,为该文件生成伴侣文件,所述伴侣文件包括针对多个文件片段的偏移地址和预览数据;选定文件时,依据伴侣文件对所述多个文件片段进行预览;从预览的多个文件片段中选择所需的文件片段,并获取所述文件片段对应的偏移地址;根据偏移地址,装载相应文件片段的内容。本发明能够用以快速、有效地定位到文件内部的某个或多个文件片段。
文档编号G06F17/22GK102063414SQ20091023766
公开日2011年5月18日 申请日期2009年11月13日 优先权日2009年11月13日
发明者冯永, 廖健, 郑培枫, 饶文辉 申请人:新奥特(北京)视频技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1