CN107122433B - 一种复合文档的合并方法及实现该方法的系统 - Google Patents
一种复合文档的合并方法及实现该方法的系统 Download PDFInfo
- Publication number
- CN107122433B CN107122433B CN201710254610.8A CN201710254610A CN107122433B CN 107122433 B CN107122433 B CN 107122433B CN 201710254610 A CN201710254610 A CN 201710254610A CN 107122433 B CN107122433 B CN 107122433B
- Authority
- CN
- China
- Prior art keywords
- content
- file
- resource
- index
- subfolder
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 150000001875 compounds Chemical class 0.000 title claims abstract description 126
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000006835 compression Effects 0.000 claims description 2
- 238000007906 compression Methods 0.000 claims description 2
- 239000002131 composite material Substances 0.000 description 14
- 230000006870 function Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/113—Details of archiving
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/134—Distributed indices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种复合文档的合并方法,包括:步骤S11:将需要合并的相同类型的多个复合文档分别存放到不同的文件夹中;步骤S12:在每个文件夹中找到各自包括的索引文件;步骤S13:从索引文件中解析出索引列表;步骤S14:将记录着相同类型文件的索引列表合并,确保合并后的索引列表中的文件索引号不重号,从而使得索引列表中的文件索引号对应的文件的文件名中的文件索引号不重号;步骤S15:将每个文件夹中对应于同一子文件夹名的子文件夹中的文件进行合并。本发明还涉及一种实现该合并方法的系统。本发明实施例提出的技术方案能够自动将两个或两个以上复合文档合并,不需要人工操作,简单快速,并且能够正常显示合并后的信息。
Description
技术领域
本发明属于电子文档处理技术领域,具体涉及一种复合文档的合并方法及实现该方法的系统。
背景技术
复合文档不仅包含文本,而且包括图形、电子表格数据、声音、视频图像以及其它非文本信息。复合文档的应用改变了用户组织文档以及与网络上其他用户协同工作的方式。复合文档实际是一个zip压缩包,包含若干文件,例如内容文件和资源文件,还包括一个内容索引文件,用于记录和引用所有内容页。
在进行两个复合文档的合并时,例如将复合文档B中的内容追加到复合文档A的末尾,可以通过用户手动追加,需要的操作是,打开复合文档A和复合文档B,然后拷贝复合文档B的所有页面并复制到复合文档A的末尾,最后将复制了复合文档B的复合文档A直接保存或者另存为其他文件名的文档,从而完成合并操作。通过这种办法,可以实现两个复合文档的合并,但需要用户手动合并,并且操作步骤比较复杂。
对于某些功能强大的应用软件,例如PowerPoint软件,在2010版和2013版中均提供了进行PPT文档合并的功能。但利用PowerPoint软件进行两个PPT文档合并,例如将PPT文档B合并到PPT文档A时,如果PPT文档B中定义了宏,或者PPT文档B中含有链接等信息,PPT文档B可能不能正常合并到PPT文档A,或者在PPT文档B合并到PPT文档A后,某些信息不能正常显示。
发明内容
为了解决上述的操作复杂、某些信息的存在导致合并失败或者合并后某些信息不能正常显示的问题,本发明实施例提出了一种复合文档的合并方法及实现该方法的系统。
一种复合文档的合并方法,该方法包括以下步骤:
步骤S11:将需要合并的相同类型的多个复合文档分别存放到不同的文件夹中;
其中,每个文件夹中均包括一个或多个子文件夹,每个子文件夹中包括一个文件或多个同一类型的文件,每个子文件夹中的一个文件或多个同一类型文件的文件名中均包括文件索引号,同一子文件夹中所有文件的文件索引号不重号;对于在不同文件夹的子文件夹中的相同类型的文件,其所在的子文件夹的子文件夹名相同;
每个文件夹中均还包括与各个子文件夹对应的索引文件,索引文件包括索引列表,索引列表包括文件索引号;
步骤S12:在每个文件夹中找到各自包括的索引文件;
步骤S13:从索引文件中解析出索引列表;
步骤S14:将记录着相同类型文件的索引列表合并,确保合并后的索引列表中的文件索引号不重号,从而使得索引列表中的文件索引号对应的文件的文件名中的文件索引号不重号;
步骤S15:将每个文件夹中对应于同一子文件夹名的子文件夹中的文件进行合并。
进一步地,在步骤S11中,首先将需要合并的相同类型的多个复合文档分别解压,然后分别存放到不同的文件夹中;
所述合并方法还包括步骤S16:将合并后的文件夹进行压缩保存。
进一步地,所述多个复合文档为两个,所述步骤S11至S16分别为:
步骤S11:将需要合并的相同类型的第一复合文档和第二复合文档分别解压到第一文件夹和第二文件夹;
其中,第一文件夹和第二文件夹中均包括一个或多个子文件夹,每个子文件夹中包括一个文件或多个同一类型的文件,每个子文件夹中的一个文件或多个同一类型文件的文件名中均包括文件索引号,同一子文件夹中所有文件的文件索引号不重号;
对于在第一文件夹的子文件夹中和在第二文件夹的子文件夹中的相同类型的文件,其所在的第一文件夹的子文件夹的子文件夹名和所在的第二文件夹的子文件夹的子文件夹名相同;
第一文件夹和第二文件夹中均还包括与各个子文件夹对应的索引文件,索引文件包括索引列表,索引列表包括文件索引号;
步骤S12:在第一文件夹和第二文件夹中找到各自包括的索引文件;
步骤S13:从索引文件中解析出索引列表;
步骤S14:将记录着相同类型文件的索引列表合并,确保合并后的索引列表中的文件索引号不重号,从而使得索引列表中的文件索引号对应的文件的文件名中的文件索引号不重号;
步骤S15:将第二文件夹和第一文件夹中对应于同一子文件夹名的子文件夹中的文件进行合并;
步骤S16:将合并后的文件夹进行压缩保存。
进一步地,在将三个以上复合文档进行合并时,首先从这些复合文档中选择确定一个被合并的复合文档,其他复合文档即为合并的文档,在确定这些合并的文档合并的先后顺序后,按照先后顺序依次按照所述合并方法与被合并的复合文档进行合并,直到所有的合并的文档均合并完毕。
进一步地,其中,每个文件夹中均包括一个内容子文件夹,内容子文件夹中包括一个或多个内容文件,内容文件的文件索引号为内容页面索引号,对应内容子文件夹的索引文件为内容索引文件,内容索引文件中含有内容索引列表,内容索引列表中记录有所述一个或多个内容文件的内容页面索引号。
进一步地,部分或全部文件夹中还包括一个资源子文件夹,资源子文件夹中包括一个或多个资源文件,资源文件的文件索引号为资源索引号,对应资源子文件夹的索引文件为资源索引文件,资源索引文件中含有资源索引列表,资源索引列表中记录有所述一个或多个资源文件的资源索引号。
进一步地,一个资源子文件夹包括的资源文件的资源索引号与另一资源子文件夹包括的资源文件的资源索引号相互不重名;
或者,一个资源子文件夹包括的资源文件的资源索引号与另一资源子文件夹包括的资源文件的资源索引号存在重名的情况。
本发明实施例还提出一种实现复合文档的合并方法的系统,所述系统包括放置模块、查找模块、解析模块、索引列表合并模块和文件合并模块;
放置模块用于将需要合并的相同类型的复合文档分别存放到不同的文件夹中;
其中,每个文件夹中均包括一个或多个子文件夹,每个子文件夹中包括一个文件或多个同一类型的文件,每个子文件夹中的一个文件或多个同一类型文件的文件名中均包括文件索引号,同一子文件夹中所有文件的文件索引号不重号;对于在不同文件夹的子文件夹中的相同类型的文件,其所在的子文件夹的子文件夹名相同;
每个文件夹中均还包括与各个子文件夹对应的索引文件,索引文件包括索引列表,索引列表包括文件索引号;
查找模块用于在每个文件夹中找到各自包括的索引文件;
解析模块用于从索引文件中解析出索引列表;
索引列表合并模块用于将记录着相同类型文件的索引列表合并,确保合并后的索引列表中的文件索引号不重号,从而使得索引列表中的文件索引号对应的文件的文件名中的文件索引号不重号;
文件合并模块用于将每个文件夹中对应于同一子文件夹名的子文件夹中的文件进行合并。
进一步地,所述系统还包括压缩模块,用于将得到的合并后的文件夹进行压缩保存。
进一步地,所述系统实现如前任一项所述的合并方法。
本发明实施例的有益效果:
本发明实施例提出的复合文档的合并方法及实现该方法的系统能够自动将两个或两个以上复合文档合并,不需要人工操作,简单快速,并且能够正常显示合并后的信息。
附图说明
图1是本发明实施例提出的复合文档的合并方法流程图;
图2是本发明实施例提出的复合文档的合并方法的实施例1的流程图;
图3是本发明实施例提出的复合文档的合并方法的实施例2的流程图;
图4是本发明实施例提出的复合文档的合并方法的实施例3的流程图;
图5是本发明实施例提出的实现复合文档的合并方法的系统的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。但本领域技术人员知晓,本发明并不局限于附图和以下实施例。
本发明实施例提出的复合文档的合并方法,如图1所示,该方法包括以下步骤:
步骤S11:将需要合并的相同类型的第一复合文档和第二复合文档分别解压到第一文件夹和第二文件夹,第一文件夹和第二文件夹可以位于相同目录下,也可以位于不同目录下;
第一文件夹和第二文件夹中均包括一个或多个子文件夹,每个子文件夹中包括一个文件或多个同一类型的文件,每个子文件夹中的一个文件或多个同一类型文件的文件名中均包括文件索引号,同一子文件夹中所有文件的文件索引号不重号;
其中,对于相同类型的文件,其在第一文件夹和第二文件夹中各自所在的子文件夹的子文件夹名相同;
第一文件夹和第二文件夹中均还包括与各个子文件夹对应的索引文件,索引文件包括索引列表,索引列表包括文件索引号;
步骤S12:在第一文件夹和第二文件夹中找到各自包括的索引文件;
步骤S13:从索引文件中解析出索引列表;
步骤S14:将记录着相同类型文件的索引列表合并,确保合并后的索引列表中的文件索引号不重号,从而使得索引列表中的文件索引号对应的文件的文件名中的文件索引号不重号;
步骤S15:将第二文件夹和第一文件夹中对应于同一子文件夹名的子文件夹中的文件进行合并;
步骤S16:将步骤S15得到的合并后的文件夹进行压缩保存即得到合并后的复合文档。
本发明实施例提出的复合文档的合并方法也适用于三个以上复合文档的合并。在将三个以上复合文档进行合并时,首先从这些复合文档中选择确定一个被合并的复合文档,那么其他复合文档即为合并的文档,这些合并的文档确定合并的先后顺序后,按照先后顺序依次按照前述的方法与被合并的复合文档进行合并,直到所有的合并的文档均合并完毕。
下面结合复合文档的不同情形对上述合并方法进行具体描述。
实施例1:
本发明实施例1提出的复合文档的合并方法,如图2所示,以复合文档B合并到复合文档A的末尾为例进行说明。
其中,复合文档A包括i个内容文件(后缀名以.xml为例):content1.xml、……、contenti.xml,i为正整数,每个内容文件的文件名中带有内容页面索引号,内容页面索引号依次为1、……、i,在本实施例中复合文档A不包含资源文件,即复合文档A仅有一个子文件夹contents;复合文档A包括针对i个内容文件的内容索引文件FA,内容索引文件FA中含有内容索引列表IA,内容索引列表IA中记录有所述i个内容文件的内容页面索引号。
复合文档B包括n个内容文件(后缀名以.xml为例):content1.xml、……、contentn.xml,n为正整数,每个内容文件的文件名中带有内容页面索引号,内容页面索引号依次为1、……、n,在本实施例中复合文档B不包含资源文件,即复合文档B仅有一个子文件夹contents,该子文件夹与复合文档A中的子文件夹contents的子文件夹名相同,表明其中的文件为同一类型;复合文档B包括内容索引文件FB,内容索引文件FB中含有内容索引列表IB,内容索引列表IB中记录有所述n个内容文件的内容页面索引号。
本实施例提出的合并方法如图2所示,包括以下步骤:
步骤S21:将复合文档A和复合文档B分别解压到两个文件夹:文件夹DA和文件夹DB;文件夹DA中有i个内容文件以及一个内容索引文件FA;文件夹DB中有n个内容文件以及一个内容索引文件FB;
步骤S22:在文件夹DA找到内容索引文件FA,在文件夹DB找到内容索引文件FB;
步骤S23:从内容索引文件FA解析出内容索引列表IA,从内容索引文件FB解析出内容索引列表IB;
步骤S24:判断或计算出内容索引列表IA中的内容文件个数i;
步骤S25:将文件夹DB中n个内容文件的内容页面索引号依次改为1+i、……、n+i,修改后该n个内容文件的文件名为content(1+i)、……、content(n+i);内容索引文件FB的内容索引列表IB中记录的所述n个内容文件的内容页面索引号依次改为1+i、……、n+i;
步骤S26:将文件夹DB中修改了内容页面索引号的n个内容文件拷贝到文件夹DA中,将修改后的内容索引列表IB追加到内容索引列表IA中;
上表中的“presentation.xml”为修改后的内容索引文件。
步骤S27:将步骤S26得到的文件夹DA进行压缩,压缩文件的文件名可以为原复合文档A的文件名,也可以根据预先设置改为其他文件名,例如combine1;并将该压缩文件的后缀.ppt改成后缀.pptx,以表明该压缩文件为合并后的压缩文件,例如压缩文件的文件名及后缀为combine1.pptx,这样就得到了合并后的复合文档。
实施例2:
本实施例与实施例1的不同之处在于,在本实施例中,需要进行合并的两个复合文档分别用复合文档C和复合文档D表示,复合文档C和复合文档D其中之一或两者都包括资源文件,即复合文档C和/或复合文档D还包括一个子文件夹resources,并且复合文档C包括的资源文件与复合文档D包括的资源文件相互不重名。下面以复合文档C和复合文档D都包括资源文件为例进行说明。
其中,复合文档C包括j个内容文件(后缀名仍以.xml为例),content1.xml、……、contentj.xml,j为正整数,每个内容文件的文件名中带有内容页面索引号,内容页面索引号依次为1、……、j;复合文档C还包含k个资源文件resource(g+1).*、……、resource(g+k).*,g为非负整数,k为正整数,每个资源文件的后缀名可以相同,也可以不同;复合文档C还包括内容索引文件FC,内容索引文件FC中含有内容索引列表IC,内容索引列表IC中记录有所述j个内容文件的内容页面索引号。
复合文档D包括m个内容文件(后缀名仍以.xml为例),content1.xml、……、contentm.xml,m为正整数,每个内容文件的文件名中带有内容页面索引号,内容页面索引号依次为1、……、m;复合文档D还包含q个资源文件resource(h+1).*、……、resource(h+q).*,h为非负整数,q为正整数,且h+1、……、h+q与g+1、……、g+k没有相同的数;复合文档D包括的每个资源文件的后缀名可以相同,也可以不同;复合文档D还包括内容索引文件FD,内容索引文件FD中含有内容索引列表ID,内容索引列表ID中记录有所述m个内容文件的内容页面索引号。
本实施例提出的合并方法如图3所示,包括以下步骤:
步骤S31:将复合文档C和复合文档D分别解压到两个文件夹:文件夹DC和文件夹DD;文件夹DC中有j个内容文件以及一个内容索引文件FC;文件夹DD中有m个内容文件以及一个内容索引文件FD;
步骤S32:在文件夹DC找到内容索引文件FC,在文件夹DD找到内容索引文件FD;
步骤S33:从内容索引文件FC解析出内容索引列表IC,从内容索引文件FD解析出内容索引列表ID;
步骤S34:判断或计算出内容索引列表IC中的内容文件个数j;
步骤S35:将文件夹DD中m个内容文件的内容页面索引号依次改为1+j、……、m+j,内容索引文件FD的内容索引列表ID中记录的所述m个内容文件的内容页面索引号依次改为1+j、……、m+j;
步骤S36:将文件夹DD中修改了内容页面索引号的m个内容文件拷贝到文件夹DC中,q个资源文件拷贝到文件夹DC中,将修改后的内容索引列表ID追加到内容索引列表IC中;
上表中的“presentation.xml”为修改后的内容索引文件。
步骤S37:将步骤S36得到的文件夹DC进行压缩,压缩文件的文件名可以为原复合文档C的文件名,也可以根据预先设置改为其他文件名,例如combine2;并将该压缩文件的后缀.ppt改成后缀.pptx,以表明该压缩文件为合并后的压缩文件,例如压缩文件的文件名及后缀为combine2.pptx,这样就得到了合并后的复合文档。
实施例3:
本实施例与实施例2的不同之处在于,在本实施例中,需要进行合并的两个复合文档分别用复合文档U和复合文档W表示,复合文档U和复合文档W其中之一或两者都包括资源文件,并且复合文档U包括的资源文件与复合文档W包括的资源文件可能存在重名的情况。下面以复合文档U和复合文档W都包括资源文件为例进行说明。
其中,复合文档U包括x个内容文件(后缀名仍以.xml为例),content1.xml、……、contentx.xml,x为正整数,每个内容文件的文件名中带有内容页面索引号,内容页面索引号依次为1、……、x。复合文档U还包含r个资源文件resource1.*、……、resourcer.*,r为正整数,每个资源文件的文件名中带有资源索引号,资源索引号依次为1、……、r,每个资源文件的后缀名可以相同,也可以不同。复合文档U还包括内容索引文件FU和资源索引文件EU,内容索引文件FU中含有内容索引列表IU,内容索引列表IU中记录有所述x个内容文件的内容页面索引号;资源索引文件EU中含有资源索引列表TU,资源索引列表TU中记录有所述r个资源文件的资源索引号。
复合文档W包括y个内容文件(后缀名仍以.xml为例),content1.xml、……、contenty.xml,y为正整数,每个内容文件的文件名中带有内容页面索引号,内容页面索引号依次为1、……、y;复合文档w还包含t个资源文件resource1.*、……、resourcet.*,t为正整数;复合文档W包括的每个资源文件可以是同类型文件,或者不同类型文件,即每个资源文件的后缀名可以相同,也可以不同;复合文档W还包括内容索引文件FW,内容索引文件FW中含有内容索引列表IW,内容索引列表IW中记录有所述y个内容文件的内容页面索引号。
本实施例提出的合并方法如图4所示,包括以下步骤:
步骤S41:将复合文档U和复合文档W分别解压到两个文件夹:文件夹DU和文件夹DW;文件夹DU中有x个内容文件、一个内容索引文件FU以及一个资源索引文件EU;文件夹DW中有y个内容文件、一个内容索引文件FW以及一个资源索引文件EW;
步骤S42:在文件夹DU找到内容索引文件FU和资源索引文件EU,资源索引文件EU中含有资源索引列表TU,在文件夹DW找到内容索引文件FW和资源索引文件EW,资源索引文件EW中含有资源索引列表TW;
步骤S43:从内容索引文件FU解析出内容索引列表IU,从内容索引文件FW解析出内容索引列表IW;从资源索引文件EU解析出资源索引列表TU,从资源索引文件EW解析出资源索引列表TW;
步骤S44:判断或计算出内容索引列表IU中的内容文件个数x和资源索引列表TU中的资源文件个数r;
步骤S45:将文件夹DW中y个内容文件的内容页面索引号依次改为1+x、……、y+x,内容索引文件FW的内容索引列表IW中记录的所述y个内容文件的内容页面索引号依次改为1+x、……、y+x;将文件夹DW中t个资源文件的内容页面索引号依次改为1+r、……、t+r,资源索引文件EW的内容索引列表TW中记录的所述t个内容文件的内容页面索引号依次改为1+r、……、t+r;
步骤S46:将文件夹DW中修改了内容页面索引号的y个内容文件拷贝到文件夹DU中,t个资源文件拷贝到文件夹DU中,将修改后的内容索引列表IW追加到内容索引列表Iu中,将修改后的资源索引列表TW追加到资源索引列表TU中;
上表中的“presentation.xml”为修改后的内容索引文件,“index.xml”为修改后的资源索引文件。
步骤S47:将步骤S46得到的文件夹DU进行压缩,压缩文件的文件名可以为原复合文档U的文件名,也可以根据预先设置改为其他文件名,例如combine3;并将该压缩文件的后缀.ppt改成后缀.pptx,以表明该压缩文件为合并后的压缩文件,例如压缩文件的文件名及后缀为combine3.pptx,这样就得到了合并后的复合文档。
本发明实施例还提出了一种实现前述复合文档的合并方法的系统,如图5所示,包括:放置模块51、查找模块52、解析模块53、索引列表合并模块54和文件合并模块55。
放置模块51,用于将需要合并的相同类型的复合文档分别存放到不同的文件夹中;
其中,每个文件夹中均包括一个或多个子文件夹,每个子文件夹中包括一个文件或多个同一类型的文件,每个子文件夹中的一个文件或多个同一类型文件的文件名中均包括文件索引号,同一子文件夹中所有文件的文件索引号不重号;对于在不同文件夹的子文件夹中的相同类型的文件,其所在的子文件夹的子文件夹名相同;
每个文件夹中均还包括与各个子文件夹对应的索引文件,索引文件包括索引列表,索引列表包括文件索引号;
查找模块52,用于在每个文件夹中找到各自包括的索引文件;
解析模块53,用于从索引文件中解析出索引列表;
索引列表合并模块54,用于将记录着相同类型文件的索引列表合并,确保合并后的索引列表中的文件索引号不重号,从而使得索引列表中的文件索引号对应的文件的文件名中的文件索引号不重号;
文件合并模块55,用于将每个文件夹中对应于同一子文件夹名的子文件夹中的文件进行合并。
进一步地,所述放置模块51首先将需要合并的相同类型的多个复合文档分别解压,然后分别存放到不同的文件夹中。
所述系统还包括压缩模块56,用于将得到的合并后的文件夹进行压缩保存。
所述系统包括的各个模块可以相应完成前述各实施例包括的各个合并子操作,鉴于篇幅原因不作过多描述。
本领域技术人员可以理解,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上,对本发明的实施方式进行了说明。但是,本发明不限定于上述实施方式。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种复合文档的合并方法,其特征在于,该方法包括以下步骤:
步骤S11:将需要合并的相同类型的第一复合文档和第二复合文档分别解压到第一文件夹和第二文件夹中;所述第一文件夹和第二文件夹位于相同目录下,或者位于不同目录下;
其中,第一复合文档包括第一内容文件和第一资源文件,第二复合文档包括第二内容文件和第二资源文件,相应地,第一文件夹中包括存放第一内容文件的第一内容文件子文件夹、与第一内容文件子文件夹对应的第一内容索引文件、存放第一资源文件的第一资源文件子文件夹和与第一资源文件子文件夹对应的第一资源索引文件,第二文件夹中包括存放第二内容文件的第二内容文件子文件夹、与第二内容文件子文件夹对应的第二内容索引文件、存放第二资源文件的第二资源文件子文件夹和与第二资源文件子文件夹对应的第二资源索引文件,每个内容文件子文件夹中的所有内容文件的文件名中均包括内容页面索引号,同一内容文件子文件夹中所有内容文件的内容页面索引号不重号;每个资源文件子文件夹中的所有资源文件的文件名中均包括资源索引号,同一资源文件子文件夹中所有资源文件的资源索引号不重号;
对于在第一文件夹的子文件夹中和在第二文件夹的子文件夹中的相同类型的文件,其所在的第一文件夹的子文件夹的子文件夹名和所在的第二文件夹的子文件夹的子文件夹名相同,第一内容文件子文件夹与第二内容文件子文件夹的子文件夹名相同,第一资源文件子文件夹与第二资源文件子文件夹的子文件夹名相同;
第一内容索引文件包括第一内容索引列表,第一内容索引列表中包括内容页面索引号,第一资源索引文件包括第一资源索引列表,第一资源索引列表中包括资源索引号;第二内容索引文件包括第二内容索引列表,第二内容索引列表中包括内容页面索引号,第二资源索引文件包括第二资源索引列表,第二资源索引列表中包括资源索引号;
步骤S12:在第一文件夹中找到第一内容索引文件和第一资源索引文件,在第二文件夹中找到第二内容索引文件和第二资源索引文件;
步骤S13:从第一内容索引文件中解析出第一内容索引列表,从第一资源索引文件中解析出第一资源索引列表;从第二内容索引文件中解析出第二内容索引列表,从第二资源索引文件中解析出第二资源索引列表;
步骤S14:在第一资源文件和第二资源文件相互不重名时,计算出第一内容索引列表中的内容文件个数,将第二内容文件子文件夹中存放的所有第二内容文件的内容页面索引号均增加所述计算出的第一内容索引列表中的内容文件个数得到修改后的第二内容文件,以及将第二内容索引列表中包括的内容页面索引号均增加所述计算出的第一内容索引列表中的内容文件个数得到修改后的第二内容索引列表;将修改后的第二内容文件合并到第一内容文件子文件夹中,将修改后的第二内容索引列表追加到第一内容索引列表中,以及将第二资源文件子文件夹中存放的所有第二资源文件合并到第一资源文件子文件夹中,将第二资源索引列表追加到第一资源索引列表中;
在第一资源文件和第二资源文件存在重名时,计算出第一内容索引列表中的内容文件个数和第一资源索引列表中的资源文件个数,将第二内容文件子文件夹中存放的所有第二内容文件的内容页面索引号均增加所述计算出的第一内容索引列表中的内容文件个数得到修改后的第二内容文件,以及将第二内容索引列表中包括的内容页面索引号均增加所述计算出的第一内容索引列表中的内容文件个数得到修改后的第二内容索引列表,将第二资源文件子文件夹中存放的所有第二资源文件的资源索引号均增加所述计算出的第一资源索引列表中的资源文件个数得到修改后的第二资源文件,以及将第二资源索引列表中包括的资源索引号均增加所述计算出的第一资源索引列表中的资源文件个数得到修改后的第二资源索引列表;将修改后的第二内容文件合并到第一内容文件子文件夹中,将修改后的第二内容索引列表追加到第一内容索引列表中,以及将修改后的第二资源文件合并到第一资源文件子文件夹中,将修改后的第二资源索引列表追加到第一资源索引列表中。
2.根据权利要求1所述的方法,其特征在于,所述合并方法还包括将合并后的第一文件夹进行压缩保存。
3.根据权利要求1或2所述的方法,其特征在于,在将三个以上复合文档进行合并时,首先从这些复合文档中选择确定一个被合并的复合文档,其他复合文档即为合并的文档,在确定这些合并的文档合并的先后顺序后,按照先后顺序依次按照所述合并方法将其他复合文档与被合并的复合文档进行合并,直到所有的合并的文档均合并完毕。
4.一种实现复合文档的合并方法的系统,其特征在于,所述系统包括放置模块、查找模块、解析模块、索引列表合并模块和文件合并模块;
其中,放置模块用于将需要合并的相同类型的第一复合文档和第二复合文档分别解压到第一文件夹和第二文件夹中;所述第一文件夹和第二文件夹位于相同目录下,或者位于不同目录下;
其中,第一复合文档包括第一内容文件和第一资源文件,第二复合文档包括第二内容文件和第二资源文件,相应地,第一文件夹中包括存放第一内容文件的第一内容文件子文件夹、与第一内容文件子文件夹对应的第一内容索引文件、存放第一资源文件的第一资源文件子文件夹和与第一资源文件子文件夹对应的第一资源索引文件,第二文件夹中包括存放第二内容文件的第二内容文件子文件夹、与第二内容文件子文件夹对应的第二内容索引文件、存放第二资源文件的第二资源文件子文件夹和与第二资源文件子文件夹对应的第二资源索引文件,每个内容文件子文件夹中的所有内容文件的文件名中均包括内容页面索引号,同一内容文件子文件夹中所有内容文件的内容页面索引号不重号;每个资源文件子文件夹中的所有资源文件的文件名中均包括资源索引号,同一资源文件子文件夹中所有资源文件的资源索引号不重号;
对于在第一文件夹的子文件夹中和在第二文件夹的子文件夹中的相同类型的文件,其所在的第一文件夹的子文件夹的子文件夹名和所在的第二文件夹的子文件夹的子文件夹名相同,第一内容文件子文件夹与第二内容文件子文件夹的子文件夹名相同,第一资源文件子文件夹与第二资源文件子文件夹的子文件夹名相同;
第一内容索引文件包括第一内容索引列表,第一内容索引列表中包括内容页面索引号,第一资源索引文件包括第一资源索引列表,第一资源索引列表中包括资源索引号;第二内容索引文件包括第二内容索引列表,第二内容索引列表中包括内容页面索引号,第二资源索引文件包括第二资源索引列表,第二资源索引列表中包括资源索引号;
查找模块用于在第一文件夹中找到第一内容索引文件和第一资源索引文件,在第二文件夹中找到第二内容索引文件和第二资源索引文件;
解析模块用于从第一内容索引文件中解析出第一内容索引列表,从第一资源索引文件中解析出第一资源索引列表;从第二内容索引文件中解析出第二内容索引列表,从第二资源索引文件中解析出第二资源索引列表;
在第一资源文件和第二资源文件相互不重名时,解析模块计算出第一内容索引列表中的内容文件个数,将第二内容文件子文件夹中存放的所有第二内容文件的内容页面索引号均增加所述计算出的第一内容索引列表中的内容文件个数得到修改后的第二内容文件,以及将第二内容索引列表中包括的内容页面索引号均增加所述计算出的第一内容索引列表中的内容文件个数得到修改后的第二内容索引列表;文件合并模块将修改后的第二内容文件合并到第一内容文件子文件夹中,索引列表合并模块将修改后的第二内容索引列表追加到第一内容索引列表中,以及文件合并模块将第二资源文件子文件夹中存放的所有第二资源文件合并到第一资源文件子文件夹中,索引列表合并模块将第二资源索引列表追加到第一资源索引列表中;
在第一资源文件和第二资源文件存在重名时,解析模块计算出第一内容索引列表中的内容文件个数和第一资源索引列表中的资源文件个数,将第二内容文件子文件夹中存放的所有第二内容文件的内容页面索引号均增加所述计算出的第一内容索引列表中的内容文件个数得到修改后的第二内容文件,以及将第二内容索引列表中包括的内容页面索引号均增加所述计算出的第一内容索引列表中的内容文件个数得到修改后的第二内容索引列表,将第二资源文件子文件夹中存放的所有第二资源文件的资源索引号均增加所述计算出的第一资源索引列表中的资源文件个数得到修改后的第二资源文件,以及将第二资源索引列表中包括的资源索引号均增加所述计算出的第一资源索引列表中的资源文件个数得到修改后的第二资源索引列表;文件合并模块将修改后的第二内容文件合并到第一内容文件子文件夹中,索引列表合并模块将修改后的第二内容索引列表追加到第一内容索引列表中,以及文件合并模块将修改后的第二资源文件合并到第一资源文件子文件夹中,索引列表合并模块将修改后的第二资源索引列表追加到第一资源索引列表中。
5.根据权利要求4所述的系统,其特征在于,所述系统还包括压缩模块,用于将合并后的第一文件夹进行压缩保存。
6.根据权利要求4或5所述的系统,其特征在于,在将三个以上复合文档进行合并时,首先从这些复合文档中选择确定一个被合并的复合文档,其他复合文档即为合并的文档,在确定这些合并的文档合并的先后顺序后,按照先后顺序依次按照所述合并方法将其他复合文档与被合并的复合文档进行合并,直到所有的合并的文档均合并完毕。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710254610.8A CN107122433B (zh) | 2017-04-18 | 2017-04-18 | 一种复合文档的合并方法及实现该方法的系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710254610.8A CN107122433B (zh) | 2017-04-18 | 2017-04-18 | 一种复合文档的合并方法及实现该方法的系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107122433A CN107122433A (zh) | 2017-09-01 |
CN107122433B true CN107122433B (zh) | 2020-07-24 |
Family
ID=59725952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710254610.8A Active CN107122433B (zh) | 2017-04-18 | 2017-04-18 | 一种复合文档的合并方法及实现该方法的系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107122433B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113591434A (zh) * | 2021-08-05 | 2021-11-02 | 江西金格科技股份有限公司 | 一种ofd文档合并携带语义标引信息的方法 |
CN114860674B (zh) * | 2022-07-06 | 2022-12-13 | 深圳传音控股股份有限公司 | 文件处理方法、智能终端及存储介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414299A (zh) * | 2008-10-20 | 2009-04-22 | 腾讯科技(深圳)有限公司 | 复合文档的修复方法和装置 |
CN101465751A (zh) * | 2009-01-08 | 2009-06-24 | 腾讯科技(深圳)有限公司 | 基于即时通信发送、接收复合文档的方法、终端和系统 |
CN102110105A (zh) * | 2009-12-23 | 2011-06-29 | 新奥特(北京)视频技术有限公司 | 一种图文包装系统读取文件夹的方法和装置 |
CN102110106A (zh) * | 2009-12-23 | 2011-06-29 | 新奥特(北京)视频技术有限公司 | 一种图文包装服务器及服务器中索引文件的维护方法 |
CN102122284A (zh) * | 2010-01-08 | 2011-07-13 | 腾讯科技(深圳)有限公司 | 一种复合文档存储、读写方法和装置 |
CN102419775A (zh) * | 2011-12-22 | 2012-04-18 | 厦门雅迅网络股份有限公司 | 一种海量小文件的存储与检索方法 |
CN104252364A (zh) * | 2013-06-25 | 2014-12-31 | 腾讯科技(深圳)有限公司 | 增量更新的方法、设备及系统 |
CN105260453A (zh) * | 2015-10-12 | 2016-01-20 | 中科创达软件股份有限公司 | 一种应用文件夹的合并方法及系统 |
CN105718569A (zh) * | 2016-01-20 | 2016-06-29 | 广州视睿电子科技有限公司 | 复合文档的上传方法、装置及系统 |
CN105847306A (zh) * | 2015-01-12 | 2016-08-10 | 鸿富锦精密工业(深圳)有限公司 | 云存储系统及方法 |
CN105930475A (zh) * | 2016-06-28 | 2016-09-07 | 齐德昱 | 大数据的复合文档组织与存取模型GriDoc |
CN106357816A (zh) * | 2016-11-04 | 2017-01-25 | 广州视睿电子科技有限公司 | 一种云端存储复合文档的方法及系统 |
CN106462671A (zh) * | 2014-06-30 | 2017-02-22 | 惠普发展公司,有限责任合伙企业 | 复合文档引用资源 |
-
2017
- 2017-04-18 CN CN201710254610.8A patent/CN107122433B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414299A (zh) * | 2008-10-20 | 2009-04-22 | 腾讯科技(深圳)有限公司 | 复合文档的修复方法和装置 |
CN101465751A (zh) * | 2009-01-08 | 2009-06-24 | 腾讯科技(深圳)有限公司 | 基于即时通信发送、接收复合文档的方法、终端和系统 |
CN102110105A (zh) * | 2009-12-23 | 2011-06-29 | 新奥特(北京)视频技术有限公司 | 一种图文包装系统读取文件夹的方法和装置 |
CN102110106A (zh) * | 2009-12-23 | 2011-06-29 | 新奥特(北京)视频技术有限公司 | 一种图文包装服务器及服务器中索引文件的维护方法 |
CN102122284A (zh) * | 2010-01-08 | 2011-07-13 | 腾讯科技(深圳)有限公司 | 一种复合文档存储、读写方法和装置 |
CN102419775A (zh) * | 2011-12-22 | 2012-04-18 | 厦门雅迅网络股份有限公司 | 一种海量小文件的存储与检索方法 |
CN104252364A (zh) * | 2013-06-25 | 2014-12-31 | 腾讯科技(深圳)有限公司 | 增量更新的方法、设备及系统 |
CN106462671A (zh) * | 2014-06-30 | 2017-02-22 | 惠普发展公司,有限责任合伙企业 | 复合文档引用资源 |
CN105847306A (zh) * | 2015-01-12 | 2016-08-10 | 鸿富锦精密工业(深圳)有限公司 | 云存储系统及方法 |
CN105260453A (zh) * | 2015-10-12 | 2016-01-20 | 中科创达软件股份有限公司 | 一种应用文件夹的合并方法及系统 |
CN105718569A (zh) * | 2016-01-20 | 2016-06-29 | 广州视睿电子科技有限公司 | 复合文档的上传方法、装置及系统 |
CN105930475A (zh) * | 2016-06-28 | 2016-09-07 | 齐德昱 | 大数据的复合文档组织与存取模型GriDoc |
CN106357816A (zh) * | 2016-11-04 | 2017-01-25 | 广州视睿电子科技有限公司 | 一种云端存储复合文档的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107122433A (zh) | 2017-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11741057B2 (en) | Unified data object management system and the method | |
US20170308528A1 (en) | System and method for indexing electronic discovery data | |
CN102414721B (zh) | 具有多于一个操作模式的数据文件 | |
US11221992B2 (en) | Storing data files in a file system | |
US20140007014A1 (en) | Method For Graphical Representation Of A Content Collection | |
MX2008000520A (es) | Indice y busqueda de contenedor inteligente. | |
AU2019213367B2 (en) | Rule-based, modular conflict resolution for composite documents | |
CN107122433B (zh) | 一种复合文档的合并方法及实现该方法的系统 | |
CN105975495A (zh) | 大数据的存储、搜索方法及装置 | |
US9734171B2 (en) | Intelligent redistribution of data in a database | |
Laakso | Open access books through open data sources: assessing prevalence, providers, and preservation | |
KR20090037704A (ko) | 직관적 이미지 검색을 위한 이미지의 메타 데이터 생성방법 | |
CN111045994B (zh) | 一种基于kv数据库的文件分类检索方法及系统 | |
US9158493B2 (en) | Page description language package file preview | |
CN117194322A (zh) | 文件分类管理方法、系统及计算设备 | |
US20050203936A1 (en) | Format conversion apparatus and file search apparatus capable of searching for a file as based on an attribute provided prior to conversion | |
CN1967521A (zh) | 一种标注计算机资源的方法及其系统 | |
KR20210037774A (ko) | 지도를 위한 파일 관리 방법 | |
CN117112497B (zh) | 一种档案数据存储方法、系统及存储介质 | |
CN113064886B (zh) | 一种标识资源存储和标记管理的方法 | |
CN118012656A (zh) | 损坏pdf文档修复方法、装置、设备及存储介质 | |
JP2006268703A (ja) | 文書管理システム | |
Marchuk et al. | A cassette as a specialized repository for factographic systems | |
CN117215816A (zh) | 文件的修复方法、装置、终端设备和可读存储介质 | |
CN116185472A (zh) | 一种文件打包方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |