CN105183877B - 一种重组docx文件碎片数据的方法 - Google Patents

一种重组docx文件碎片数据的方法 Download PDF

Info

Publication number
CN105183877B
CN105183877B CN201510604859.8A CN201510604859A CN105183877B CN 105183877 B CN105183877 B CN 105183877B CN 201510604859 A CN201510604859 A CN 201510604859A CN 105183877 B CN105183877 B CN 105183877B
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.)
Active
Application number
CN201510604859.8A
Other languages
English (en)
Other versions
CN105183877A (zh
Inventor
梁效宁
许超明
赵飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SICHUAN XLY INFORMATION SAFETY TECHNOLOGY Co Ltd
Original Assignee
SICHUAN XLY INFORMATION SAFETY TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SICHUAN XLY INFORMATION SAFETY TECHNOLOGY Co Ltd filed Critical SICHUAN XLY INFORMATION SAFETY TECHNOLOGY Co Ltd
Priority to CN201510604859.8A priority Critical patent/CN105183877B/zh
Publication of CN105183877A publication Critical patent/CN105183877A/zh
Application granted granted Critical
Publication of CN105183877B publication Critical patent/CN105183877B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1724Details 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文件碎片数据的方法
技术领域
本发明涉及信息安全技术领域,特别涉及一种重组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 (3)

1.一种重组docx文件碎片数据的方法,其特征在于包括以下步骤:
S1:解析文件系统,区分正常区域和空闲区域;
S2:按顺序在空闲区域中扫描一个docx文件特征;
S3:分析获得docx文件尾部的xml位图索引表结构;
S4:解析xml索引表得到docx文件数据区数据存储位置;所述S4的详细步骤如下:
S401:按顺序提取一条xml索引信息;
S402:通过xml索引信息内的位置特征找到对应的数据区头部,在通过数据区头部特征找到数据区起始位置和结束位置;
S403:根据xml索引信息的结构与数据区内数据进行匹配,若与结构特征匹配成功则认为此数据区数据可用,执行S404;若没有匹配效验码则说明此数据区数据已被损坏执行S405;
S404:记录该数据区位置;
S405:判断xml索引表是否提取完成,完成则结束,未完成则执行S401;
S5:按照S3得到的xml位图索引表及S4中分配的数据区存储结构重组docx文件;
S6:判断是否完成空闲区的扫描,是则执行S7,否则执行S2;
S7:将重组的docx文件解压后按照xml格式提取关键文字信息并转换为txt文件显示。
2.根据权利要求1的一种重组docx文件碎片数据的方法,其特征在于:
所述S3中通过找到xml数据头部特征,从头部特征向下扫描每一个xml信息并进行格式匹配,相同则继续向下扫描,不同则表示为xml数据尾部,记录整个xml数据,并根据数据特征生成xml位图索引表。
3.根据权利要求1的一种重组docx文件碎片数据的方法,其特征在于:所述S5中docx文件的重组按照正常docx文件结构的排列,S3得到的xml索引表排列在尾部,xml索引表所对应的数据区数据按照xml索引信息指向数据区的位置进行有序排列,若xml指向的数据区数据损坏也按照该数据区大小进行填充排列。
CN201510604859.8A 2015-09-18 2015-09-18 一种重组docx文件碎片数据的方法 Active CN105183877B (zh)

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 CN105183877A (zh) 2015-12-23
CN105183877B true 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)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106097242A (zh) * 2016-05-31 2016-11-09 四川效率源信息安全技术股份有限公司 一种图片重组错误的更正方法

Citations (4)

* Cited by examiner, † Cited by third party
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分区数据的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
FAT32下有效数据快速恢复方法;杨德明;《计算机应用》;20120901;第32卷(第9期);第2500-2503页

Also Published As

Publication number Publication date
CN105183877A (zh) 2015-12-23

Similar Documents

Publication Publication Date Title
WO2010148201A3 (en) Data compression for reducing storage requirements in a database system
CN104598625B (zh) 基于自动识别标识符的数据表存储方法
CN101558405B (zh) 将主机系统数据库转换为开放系统数据库的转换装置和方法
CN104462433B (zh) 一种恢复fat32分区数据的方法
CN104021217A (zh) 一种提取手机碎片文件和被删除文件的系统和方法
US20170099064A1 (en) Non-transitory computer-readable recording medium, encoding method, encoding device, decoding method, and decoding device
JP2014013534A (ja) 文書処理装置、画像処理装置、文書処理方法及び文書処理プログラム
Tang et al. Recovery of heavily fragmented JPEG files
US20070133029A1 (en) Method of recognizing text information from a vector/raster image
CN105183877B (zh) 一种重组docx文件碎片数据的方法
CN106407038A (zh) 一种碎片文件的数据恢复方法
CN105045676A (zh) 基于SQLite数据库的丢失数据的恢复装置和方法
CN106681969A (zh) 一种修复损坏文档的方法
KR100961179B1 (ko) 디지털 포렌식 방법 및 장치
CN110197140B (zh) 基于文字识别的材料审核方法及设备
CN103713968B (zh) 一种基于云存储技术的rfid标签数据恢复与校验方法
CN113610068B (zh) 基于试卷图像的试题拆解方法、系统、存储介质及设备
Ravi et al. A method for carving fragmented document and image files
CN114328399B (zh) 一种基因测序多样本数据文件自动配对的方法和系统
CN108038124B (zh) 一种基于大数据的pdf文档采集处理方法、系统及装置
CN108874953A (zh) 一种Office文件内容增、删、改痕迹提取方法
JP5510768B2 (ja) 画像処理装置
US20200349112A1 (en) Method for classifying log files associated with a system
JP2007058645A (ja) Xmlデータ圧縮装置、xmlデータ圧縮方法及びxmlデータ圧縮プログラム
CN105117235A (zh) 一种重组Office文件的方法

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