3.目录结束标识结构:
目录结束标识存储于整个归档包的结尾,用于标记压缩的目录数据的结束。具体结构如表11-6所示。
11.5.2 Zip.xml文件
测试Zip软件的peach pit文件zip.xml包括数据描述部分和过程描述部分。以下章节将详细介绍。
1.数据描述部分
通过Zip文件格式来构建peach pit文件的数据描述部分,即Datamodel标签数据。
(1)压缩的文件内容源数据
① File header:
根据表11-3编写File header的XML描述。
<Block name="LocalFileHeader" maxOccurs="1024"> <String name="lfh_Signature" valueType="hex" value="504b0304" token="true" mutable="false"/> <Number name="lfh_Ver" size="16" endian="little" signed="false"/> <Flags name="lfh_BitFlag" size="16" endian="little" signed="false"> <Flag name="lfh_bf_Encrypted" size="1" position="0"/> <Flag name="lfh_bf_CompMethod1" size="1" position="1"/> <Flag name="lfh_bf_CompMethod2" size="1" position="2"/> <Flag name="lfh_bf_Zeroed" size="1" position="3"/> <Flag name="lfh_bf_Deflate" size="1" position="4"/> <Flag name="lfh_bf_Patched" size="1" position="5"/> <Flag name="lfh_bf_Strong" size="1" position="6"/> <Flag name="lfh_bf_Unused1" size="1" position="7"/> <Flag name="lfh_bf_Unused2" size="1" position="8"/> <Flag name="lfh_bf_Unused3" size="1" position="9"/> <Flag name="lfh_bf_Unused4" size="1" position="10"/> <Flag name="lfh_bf_Efs" size="1" position="11"/> <Flag name="lfh_bf_Reserved1" size="1" position="12"/> <Flag name="lfh_bf_Enc_CD" size="1" position="13"/> <Flag name="lfh_bf_Reserved2" size="1" position="14"/> <Flag name="lfh_bf_Reserved3" size="1" position="15"/> </Flags> <Number name="lfh_CompMethod" size="16" endian="little" signed="false"/> <Number name="lfh_LastModTime" size="16" endian="little" signed="false"/> <Number name="lfh_LastModDate" size="16" endian="little" signed="false"/> <Number name="lfh_CRC32" size="32" endian="little" signed="false"/> <Number name="lfh_CompSize" size="32" endian="little" signed="false"> <Relation type="size" of="lfh_CompSizeData"/> </Number> <Number name="lfh_DecompSize" size="32" endian="little" signed="false"/> <Number name="lfh_FileNameLen" size="16" endian="little" signed="false"> <Relation type="size" of="lfh_FileName"/> </Number> <Number name="lfh_ExtraFldLen" size="16" endian="little" signed="false"> <Relation type="size" of="lfh_FldName"/> </Number> <String name="lfh_FileName"/> <String name="lfh_FldName"/> |
② File data:相应压缩文件的源数据描述。
<Block name="lfh_Data"> <Block name="lfh_DataHasSize"> <Relationtype="when" when="int(self.find('lfh_CompSize').defaultValue) != 0"/> <Blob name="lfh_CompSizeData" mutable="false"/> </Block> <Block name="lfh_DataNoSize"> <Relation type="when" when="int(self.find('lfh_CompSize').defaultValue) == 0"/> <Blob name="lfh_CompNoSizeData" mutable="false"/> </Block> </Block> |
版权声明:51Testing软件测试网获作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。