下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精品文档Word文件结构1.1 Word文件结构 一个Word文件至少包括主流(Main stream)和表流(Table stream)两个流。其实这两个流就涵盖了Word中的大部分数据。主流中包括了所有文字,标格以及他们的属性。表流中含有样式,字体信息等。我们的工作主要关心Word文件中的文本内容,而文本的字体信息,样式等相对并不重要。因此,将主要关注主流(Main stream)所包含的主要内容和存储格式。 以下是一些关于文件格式的一些术语: 页(Page):Word文件主流中开始于512字节边界的长度为512字节的文本段(字节0-511为0页,字节512-1023为1页,等)。在Wor
2、d文件的数据结构中用两子介无符号整形PN(Page Number)来表示页码。 字符位置CP (Character Position):四字节整数表示文件中字符在文本流中的逻辑坐标。 文件字符位置FC( File Character position):四字节整数表示从文件开始处计算的字符位置。CP可以转化为FC,字符的FC=文本流开始处的FC+字符的CP。 文件头FIB (File Information Block):位于Word文件的开始,记录了文本流的开始位置(FIB.fcMin),文本流的长度和文件状态等信息。 段(Paragraph):文本流中由段标记,标格标记,行标记分隔的连续的
3、字符序列。 段属性PAP (PAragraph Properties):此数据结构描述了某一特定段的属性。 段属性偏移PAPX (PAragraph Property EXception):此数据结构描述了某一特定段的属性与标准段属性相比的偏移。通过段属性偏移和标准段属性可以计算具体段的段属性。(本课题中主要关心段是否是表格和标题等属性)。 格式化磁盘存储页FKP (Formatted disK Page):512字节的数据结构(占据一页),存储了Word文件中某部分段或字符的属性(本课题只关心段属性,以下只就段格式化磁盘存储页PFKP讨论),包含四部分: 1) 此页所描述的段的数量。 2)
4、存储FC的数组,按FC的升序排列,相邻的FC表示段的开始和结尾。 在PFKP中, 数据结构BX数组,BX中包含段的一般属性和对应段的PAPX位置-相应于该页起始位置的字偏移量(Word Offset)。段属性偏移量。 Word文件整体结构复杂,有大量修饰性信息,下面主要列出了与读取文件中文本内容有关的数据存储格式(注:Word文件存储的前512字节不计算在内)。 主流; 开始FC=0,PN=0 内容 起始FC 长度 文件头FIB 0 1024 文本(包括表格文字) FIB.fcMin FIB.ccpText 其余文本内容 FIB.fcMin+FIB.ccpText 结束于FIB.fcMac 格
5、式化磁盘存储页 FIB.pnPapFirst 随文件长度变化 表4-1:Word文件格式各个段落 文件头FIB: 内容 起始FC 长度 文本流开始Fcmin 24 4 文本流结束Fcmac 28 4 主文本长度CcpText 76 4 脚注长度CcpFtn 80 4 子文档头长度CcpHdd 84 4 注释文本长度 CcpAtn 92 4 文本框文本长度CcpTxbx 100 4 第一个PAPX FKP的页码数 124 4 所有PAPX FKP的个数 128 4 表4-2:Word文件头部格式 文本流: 开始于FIB.fcMin,一般开始于FIB结束后的128的整数倍FC处。 1) Word文
6、件中的文本流采用ASCII和Unicode编码混合存储,其中纯英文文档采用ASCII编码存储,纯中文文档采用Unicode编码混合存储。而中英文混合文档中按照如下规则编码存储: 以页(512字节)为单位,即每一页的编码方式相同。 所有中文部分采用Unicode编码。 英文优先采用ASCII编码,当与中文在同一页时采用Unicode编码。 从页起始位置开始连续大于256字节英文序列采用ASCII编码,不足一页部分用0填补。 混合编码虽然给文本读取带来很大的麻烦,但既发挥了Unicode编码的好处,又节省了存储空间。 2) 以下是住文本流中的一些特殊符号: 符号 ASCII编码 Unicode编码
7、 段结尾(Paragraph End) 13 13 00 行分隔(Hard Line Break) 11 11 00 分隔连接符(Break Hyphen) 45 45 00 空白符(Space) 32 32 00 制表符(Tab) 09 09 00 页分隔(Page Break) 12 12 00 单元格标记(Cell Mark) 07 07 00 表格行结束标记(Table End Mark) 07 07 00 表4-3:Word文件格式中的特殊符号 3)文本流中存储了Word文件中所有的文本内容,包括主文本内容,脚注,尾注,文本框内文本等。下表是计算相应内容存储位置的算法: 内容 计算方
8、法 主文本内容 Fib.fcMin 脚注(Footnote) Fib.fcMin+Fib.ccpText(注) 子文档头部 (Header of Subdocument) Fib.fcMin+Fib.ccpText+Fib.ccpFtn 注释子文档 (Annotation Subdocument) Fib.fcMin+Fib.ccpText+Fib.ccpFtn+Fib.ccpHdr 尾注(Endnote) Fib.fcMin+Fib.ccpText +Fib.ccpFtn+Fib.ccpHdr+Fib.ccpAtn 文本框文本(Textbox) Fib.fcMin+Fib.ccpText +Fib.ccpFtn+Fib.ccpHdr+Fib.ccpAtn+Fib.ccpEdn 文本框头部(header of Textbox) Fib.fcMin+Fib.ccpText+Fib.ccpFtn+ Fib.ccpHdr+Fib.ccpAtn+Fib.ccpEdn+Fib.ccpTxbx 表4-4:Word文件格式中各个段落的起始位置 注:Fib.ccpText表示字的个数,实际应用时应该计算出字节数。 段格式化磁盘存储页(PAPX FKP): 开始位置:Fib.pnPapFirst,与其他FKP交叉轮流存储。 PAPX FKP的存储格式
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智能物流配送路径分析方案
- 用户行为分析模型研究报告
- 广丰文博会建设方案
- 具身智能+虚拟现实社交平台互动方案
- 评分标准统一执行细则
- 2026年11月幼儿园食材采购年终合规管控计划
- 储能锂离子电池热失控预警与防护设计规范 中文版(多参数监测算法 + 分级预警机制 + 热蔓延阻隔结构)
- 地理福建莆田市2027届高中毕业班高三年级上学期开学质量诊断(莆田一检)(8.27-8.29)
- 企业风险管理及内部控制制度框架教材
- 初三上期第二学月考试后家长会
- 中国融通集团笔试题库
- 学校教师荣休仪式退休职工人员欢送会模板
- 小学生班干部竞选课件模板
- DL∕T 651-2017 氢冷发电机氢气湿度技术要求
- 建筑中级职称《给水排水工程》历年考试真题题库(含答案)
- LNG加气站质量管理手册
- 工程量清单及招标控制价编制工作方案
- 2024年全国初中数学联赛试题及答案(修正版)
- 土地租用协议
- 记承天寺夜游(王崧舟)
- 动物防疫条件审查场所选址风险评估申请表、评估标准、评估报告
评论
0/150
提交评论