ZIP文件组成

    压缩源文件数据区+压缩源文件目录区+压缩源文件目录结束标志

1、压缩源文件数据区

在这个数据区中每一个压缩的源文件/目录都是一条记录,记录的格式如下:
  

   [文件头+ 文件数据 + 数据描述符]

   a、文件头结构

     组成                     长度
  文件头标记                  4 bytes  (0x04034b50)
  解压文件所需 pkware 版本    2 bytes
  全局方式位标记              2 bytes

压缩方式 2 bytes
  最后修改文件时间 2 bytes
   最后修改文件日期 2 bytes
   CRC-32校验 4 bytes
   压缩后尺寸 4 bytes
   未压缩尺寸 4 bytes
   文件名长度 2 bytes

  扩展记录长度                2 bytes

文件名 (不定长度)
   扩展字段 (不定长度)

    b、文件数据

   

    c、数据描述符

组成  长度
  CRC-32校验 4 bytes
  压缩后尺寸 4 bytes
   未压缩尺寸 4 bytes

  这个数据描述符只在全局方式位标记的第3位设为1时才存在(见后详解),紧接在压缩数据的最后一个字节后。这个数据描述符只用在不能对输出的 ZIP 文件进行检索时使用。例如:在一个不能检索的驱动器(如:磁带机上)上的 ZIP 文件中。如果是磁盘上的ZIP文件一般没有这个数据描述符。

 2、压缩源文件目录区

 在这个数据区中每一条纪录对应在压缩源文件数据区中的一条数据

组成   长度
  目录中文件文件头标记 4 bytes (0x02014b50)
  压缩使用的 pkware 版本 2 bytes
  解压文件所需 pkware 版本 2 bytes
  全局方式位标记 2 bytes
  压缩方式 2 bytes
  最后修改文件时间 2 bytes
  最后修改文件日期 2 bytes
  CRC-32校验 4 bytes
  压缩后尺寸 4 bytes
  未压缩尺寸 4 bytes
  文件名长度 2 bytes
  扩展字段长度 2 bytes
  文件注释长度 2 bytes
  磁盘开始号 2 bytes
  内部文件属性 2 bytes
  外部文件属性 4 bytes
局部头部偏移量 4 bytes
  文件名 (不定长度)
  扩展字段 (不定长度)
文件注释 (不定长度)

3、压缩源文件目录结束标志
   组成                          长度
    目录结束标记                    4 bytes  (0x02014b50)
    当前磁盘编号                    2 bytes
    目录区开始磁盘编号              2 bytes
  本磁盘上纪录总数                 2 bytes
  目录区中纪录总数                 2 bytes
  目录区尺寸大小                   4 bytes
  目录区对第一张磁盘的偏移量        4 bytes
  ZIP 文件注释长度                 2 bytes

  ZIP 文件注释                   (不定长度)
本书讨论数据结构和算法分析。数据结构主要研究组织大量数据的方法,而算法分析则是对算法运行时间的评估。随着计算机的速度越来越快,对于能够处理大量输入数据的程序的需求变得日益急切。可是,由于在输入量很大的时候,程序的低效率现象变得非常明显,因此这又要求对效率问题给予更仔细的关注。通过在实际编程之前对算法的分析,学生可以决定一个特定的解法是否可行。例如,读者在本书中将读到一些特定的问题并看到精心的实现方法是如何把对大量数据的时间限制从16年减至不到1秒的。因此,若无运行时间的阐释,就不会有算法和数据结构的提出。   本书是国外数据结构与算法分析方在的标准教材,介绍了数据结构(大量数据的组织方法)以及算法分析(算法运行时间的估算)。本书的编写目标是同时廛授好的程序设计和算法分析技巧,使读者可以开发出具有**效率的程序。 本书可作为高级数据结构课程或研究生一年级算法分析课程的教材,使用本书需具有一些中级程序设计知识,还需要离散数学的一些背景知识。   随着速度的不断提高和存储容量的持续增长,计算机的功能日益强大,从而处理数据和解决问题的规模和复杂程度与日俱增。这不仅带来了需要认真研究的新课题,而且突出了原有数据结构和算法效率低下的缺点。程序的效率问题不是由于计算机功能的强大而受到冷落,相反地,倒是被人们提到前所未有的重视程度,因为大型问题的解决所涉及到的大容量存储和高速度运算容不得我们对效率有丝毫的忽视。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值