CN105183877A - 一种重组docx文件碎片数据的方法 - Google Patents
一种重组docx文件碎片数据的方法 Download PDFInfo
- Publication number
- CN105183877A CN105183877A CN201510604859.8A CN201510604859A CN105183877A CN 105183877 A CN105183877 A CN 105183877A CN 201510604859 A CN201510604859 A CN 201510604859A CN 105183877 A CN105183877 A CN 105183877A
- Authority
- CN
- China
- Prior art keywords
- data
- xml
- file
- docx
- docx file
- 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.)
- Granted
Links
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/17—Details of further file system functions
- G06F16/1724—Details of de-fragmentation performed by the file system
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
本发明公开了一种重组docx文件碎片数据的方法,包括以下步骤:S1:解析文件系统;S2:扫描一个docx文件;S3:分析xml位图索引表结构;S4:得到docx文件数据区存储位置;S5:重组docx文件;S6:判断是否完成扫描,是则执行S7,否则执行S2;S7:将docx文件解压并转换显示文本。本发明可以根据文件特征找到丢失docx文件的数据区与尾部xml索引表,根据xml索引表解析出docx文件数据区位置;根据docx文件数据区与xml索引表组合成为一个特定格式的文件;即使文件部分被损坏,也可以恢复其余部分的数据,将因数据丢失带来的损失降到最低。
Description
技术领域
本发明涉及信息安全技术领域,特别涉及一种重组docx文件碎片数据的方法。
背景技术
在信息化迅速发展的21世纪,计算机技术日新月异,与人们的日常生活息息相关,存储设备数据丢失往往能给个人,甚至企业单位带来无尽的烦恼与麻烦,在涉及计算机数据存储工作中,如在企业工作中,企业数据丢失造成的损失是不饿估量的,小则使公司无法开展工作,大则可能导致企业倒闭,特别是在信息企业中,公司的电子资料就是他们的命脉。其中主要的电子资料又是docx格式文档。
docx是一种基于xml的压缩文件格式,完整的docx文件其实是一个zip包,可以直接使用解压工具进行解压。docx文件作为一种广泛使用的编辑文件,已经在计算机及互联网中被广泛使用,随着使用docx的人越来越多,与docx使用相关的问题也就接踵而来,例如:误删除、犯罪分子恶意删除销毁证据,文件异常导致丢失等。出现这些情况后一般采用网上的文件恢复工具进行恢复。由于docx的结构特性,若破坏docx文件的完整性,恢复出来的都是无法编码,或者恢复后不能正常打开文件。
发明内容
本发明针对现有技术的缺陷,提出一种重组docx文件碎片数据的方法,包括以下步骤:
S1:解析文件系统,区分正常区域和空闲区域;
S2:按顺序在空闲区域中扫描一个docx文件特征;
S3:分析获得docx文件尾部的xml位图索引表结构;
S4:解析xml索引表得到docx文件数据区数据存储位置;
S5:按照S3得到的xml位图索引表及S4中分配的数据区存储结构重组docx文件;
S6:判断是否完成空闲区的扫描,是则执行S7,否则执行S2;
S7:将重组的docx文件解压后按照xml格式提取关键文字信息并转换为txt文件显示。
作为优选,所述S3中通过找到xml数据头部特征重头部向下扫描每一个xml信息并进行格式匹配,相同则继续向下扫描,不同则表示为xml数据尾部,记录整个xml数据,并根据数据特征生成xml位图索引表。
作为优选,所述S4的详细步骤如下:
S401:按顺序提取一条xml索引信息;
S402:通过xml索引信息内的位置特征找到对应的数据区头部,在通过数据区头部特征找到数据区起始位置和结束位置;
S403:根据xml索引信息的结构与数据区内数据进行匹配,若与结构特征匹配成功则认为此数据区数据可用,执行S304;若没有匹配效验码则说明此数据区数据已被损坏执行S305;
S404:记录该数据区位置;
S405:判断xml索引表是否提取完成,完成则结束,未完成则执行S301。作为优选,所述S5中docx文件的重组按照正常docx文件结构的排列,S3得到的xml索引表排列在尾部,xml索引表所对应的数据区数据按照xml索引信息指向数据区的位置进行有序排列,若xml指向的数据区数据损坏也按照该数据区大小进行填充排列。
与现有技术相比本发明的优点在于:可以根据文件特征找到丢失docx文件的数据区与尾部xml索引表,根据xml索引表解析出docx文件数据区位置;根据docx文件数据区与xml索引表组合成为一个特定格式的文件;即使文件部分被损坏,也可以恢复其余部分的数据,将因数据丢失带来的损失降到最低。
附图说明
图1为本发明实施例的主流程图;
图2为本发明步骤S4的详细流程图。
具体实施方式
为了详细说明本发明的具体实施方式,下面结合附图说明:
如图1所示,一种重组docx文件碎片数据的方法,包括以下步骤:
S1:解析文件系统,通过判断文件系统的空闲标记来区分正常区域和空闲区域。
S2:在文件系统的空闲区域中按顺序扫描docx文件特征“[Content_Types].xml”。
S3:分析获得docx文件尾部的xml位图索引表结构;在此步骤中通过扫描到xml索引信息头部特征“[Content_Types].xml”,从该特征头部向下扫描每一个xml信息并进行格式匹配,每个xml索引信息的格式都是相同的只要按照该格式进行匹配则可以判断是否为一个xml索引信息,相同则继续向下扫描,不同则表示为xml数据尾部,记录整个xml数据,并根据数据特征生成xml位图索引表。
S4:解析xml索引表得到docx文件数据区数据存储位置;所有的docx文件都是由文件尾部的xml索引信息和与之对应的数据区数据组成,通过xml索引信息中的数据区位置特征找到该xml索引对应的数据区起始位置。
S5:按照S3得到的xml位图索引表及S4中分配的数据区存储结构重组docx文件。docx文件的重组按照正常docx文件结构的排列,S3得到的xml索引表排列在尾部,xml索引表所对应的数据区数据按照xml索引信息指向数据区的位置进行从上到下有序排列,若有xml指向的数据区数据损坏也按照该数据区大小进行填充排列。
例如:DOCX文件中XML的位图索引表结构为
[Content_Types].xml
word/_rels/document.xml.rels
word/document.xml
word/media/image1.png
word/theme/theme1.xml
word/settings.xml
word/webSettings.xml
word/styles.xml
docProps/core.xml
word/numbering.xml
word/fontTable.xml
docProps/app.xml
上述每个xml索引表信息对应一个数据区块,通过索引表信息找到数据库后将数据库提取并按照上述顺序组成完整的文件。
S6:判断是否完成空闲区的扫描,是则执行S7,否则执行S2;
S7:将重组的docx文件解压后按照xml格式提取关键文字信息并转换为txt文件显示。
docx解压数据块的算法代码如下:
如图2所示,所述S4的详细步骤如下:
S401:按顺序提取一条xml索引信息;
S402:通过xml索引信息内的位置特征找到对应的数据区头部,在通过数据区头部特征找到数据区起始位置和结束位置;
S403:根据xml索引信息的结构与数据区内数据进行匹配,若与结构特征匹配成功则认为此数据区数据可用,执行S304;若没有匹配效验码则说明此数据区数据已被损坏执行S405;
S404:记录该数据区位置;
S405:判断xml索引表是否提取完成,完成则结束,未完成则执行S301。
以上描述阐述了具体细节以便充分理解本发明,但本发明还可以采用其他不同于此描述方式来实施,因此本发明并不限于以上公开的具体实施例。
Claims (4)
1.一种重组docx文件碎片数据的方法,其特征在于包括以下步骤:
S1:解析文件系统,区分正常区域和空闲区域;
S2:按顺序在空闲区域中扫描一个docx文件特征;
S3:分析获得docx文件尾部的xml位图索引表结构;
S4:解析xml索引表得到docx文件数据区数据存储位置;
S5:按照S3得到的xml位图索引表及S4中分配的数据区存储结构重组docx文件;
S6:判断是否完成空闲区的扫描,是则执行S7,否则执行S2;
S7:将重组的docx文件解压后按照xml格式提取关键文字信息并转换为txt文件显示。
2.根据权利要求1的一种重组docx文件碎片数据的方法,其特征在于:所述S3中通过找到xml数据头部特征,从头部特征向下扫描每一个xml信息并进行格式匹配,相同则继续向下扫描,不同则表示为xml数据尾部,记录整个xml数据,并根据数据特征生成xml位图索引表。
3.根据权利要求1的一种重组docx文件碎片数据的方法,其特征在于所述S4的详细步骤如下:
S401:按顺序提取一条xml索引信息;
S402:通过xml索引信息内的位置特征找到对应的数据区头部,在通过数据区头部特征找到数据区起始位置和结束位置;
S403:根据xml索引信息的结构与数据区内数据进行匹配,若与结构特征匹配成功则认为此数据区数据可用,执行S304;若没有匹配效验码则说明此数据区数据已被损坏执行S305;
S404:记录该数据区位置;
S405:判断xml索引表是否提取完成,完成则结束,未完成则执行S301。
4.根据权利要求1的一种重组docx文件碎片数据的方法,其特征在于:所述S5中docx文件的重组按照正常docx文件结构的排列,S3得到的xml索引表排列在尾部,xml索引表所对应的数据区数据按照xml索引信息指向数据区的位置进行有序排列,若xml指向的数据区数据损坏也按照该数据区大小进行填充排列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510604859.8A CN105183877B (zh) | 2015-09-18 | 2015-09-18 | 一种重组docx文件碎片数据的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510604859.8A CN105183877B (zh) | 2015-09-18 | 2015-09-18 | 一种重组docx文件碎片数据的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105183877A true CN105183877A (zh) | 2015-12-23 |
CN105183877B CN105183877B (zh) | 2019-03-22 |
Family
ID=54905958
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510604859.8A Active CN105183877B (zh) | 2015-09-18 | 2015-09-18 | 一种重组docx文件碎片数据的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105183877B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106097242A (zh) * | 2016-05-31 | 2016-11-09 | 四川效率源信息安全技术股份有限公司 | 一种图片重组错误的更正方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102214244A (zh) * | 2011-07-07 | 2011-10-12 | 深圳市万兴软件有限公司 | docx文件信息解析方法及系统 |
CN102937924A (zh) * | 2012-10-30 | 2013-02-20 | 厦门市美亚柏科信息股份有限公司 | 一种综合文件特征与文件系统的fat数据恢复方法 |
CN103309849A (zh) * | 2013-03-28 | 2013-09-18 | 大连理工大学 | 一种基于OpenXML的docx文档创建和修改方法 |
CN104462433A (zh) * | 2014-12-17 | 2015-03-25 | 四川效率源信息安全技术有限责任公司 | 一种恢复fat32分区数据的方法 |
-
2015
- 2015-09-18 CN CN201510604859.8A patent/CN105183877B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102214244A (zh) * | 2011-07-07 | 2011-10-12 | 深圳市万兴软件有限公司 | docx文件信息解析方法及系统 |
CN102937924A (zh) * | 2012-10-30 | 2013-02-20 | 厦门市美亚柏科信息股份有限公司 | 一种综合文件特征与文件系统的fat数据恢复方法 |
CN103309849A (zh) * | 2013-03-28 | 2013-09-18 | 大连理工大学 | 一种基于OpenXML的docx文档创建和修改方法 |
CN104462433A (zh) * | 2014-12-17 | 2015-03-25 | 四川效率源信息安全技术有限责任公司 | 一种恢复fat32分区数据的方法 |
Non-Patent Citations (1)
Title |
---|
杨德明: "FAT32下有效数据快速恢复方法", 《计算机应用》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106097242A (zh) * | 2016-05-31 | 2016-11-09 | 四川效率源信息安全技术股份有限公司 | 一种图片重组错误的更正方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105183877B (zh) | 2019-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7481374B2 (en) | System and method for placement and retrieval of embedded information within a document | |
CN108563535B (zh) | 一种对MySQL数据库全库的恢复方法 | |
CN104021217A (zh) | 一种提取手机碎片文件和被删除文件的系统和方法 | |
US7373008B2 (en) | Grayscale and binary image data compression | |
JP4871668B2 (ja) | 画像処理システム、画像処理方法及びプログラム | |
CN104035839A (zh) | Android系统隐私数据恢复实现方法 | |
CN101558405A (zh) | 将主机系统数据库转换为开放系统数据库的转换装置和方法 | |
CN105912622A (zh) | 一种针对无损压缩文件的数据去重方法 | |
CN104951515A (zh) | 一种提取并分析Android手机行踪轨迹的方法 | |
CN104462433A (zh) | 一种恢复fat32分区数据的方法 | |
CN112784220B (zh) | 一种纸质合同防篡改校验方法及系统 | |
CN112084748A (zh) | 一种文本比对方法 | |
CN105045676A (zh) | 基于SQLite数据库的丢失数据的恢复装置和方法 | |
CN105183877A (zh) | 一种重组docx文件碎片数据的方法 | |
Ravi et al. | A method for carving fragmented document and image files | |
CN104615948A (zh) | 一种自动识别文件完整性与恢复的方法 | |
CN1979475A (zh) | 一种压缩文件处理方法 | |
JP5510768B2 (ja) | 画像処理装置 | |
CN114328399B (zh) | 一种基因测序多样本数据文件自动配对的方法和系统 | |
JP5884597B2 (ja) | 帳票画像管理システム、帳票画像管理方法、及びプログラム | |
CN110968446B (zh) | 一种元数据修复方法、装置、系统及计算机可读存储介质 | |
CN105117235A (zh) | 一种重组Office文件的方法 | |
CN104412277B (zh) | 比较两个含有图形元素和文本元素的文件的设备和方法 | |
JPH1063744A (ja) | 文書のレイアウト解析方法及びシステム | |
CN116933143B (zh) | 一种飞行参数数据分类方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |