ZIP檔案格式詳解

2021-06-19 17:40:18 字數 2452 閱讀 4809

乙個 zip 檔案的普通格式

乙個 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 檔案注釋                   (不定長度)

zip檔案格式

原文 zip檔案格式 說明本人根據自己的學習過程,適當理解,並作下筆記,以便查閱。這裡暫不包含zip64部分。整體結構 簡單歸納總結下,zip檔案格式由檔案資料區 目錄結構,目錄結束標誌組成。其中 目錄結束節又有乙個字段儲存了 目錄結構的偏移。整體結構如下圖 分割槽描述 目錄結束標誌 目錄結束標誌一...

so檔案格式詳解

1 可重定位檔案 可與其它目標檔案一起建立可執行檔案和共享目標檔案 2 可執行檔案 可執行的乙個程式,此檔案規定了exec 如何建立乙個程式的程序映像。3 共享目標檔案 鏈結器可將它與其它可重定位檔案和共享目標檔案連線成其它的目標檔案,動態聯結器又可將它與可執行檔案和其它共享目標檔案結合起來建立乙個...

SWF檔案格式詳解

先說一下檔案頭吧,如下所示 字段 類 型 具體 說明 標記1 乙個位元組 f或c 其中c表示檔案資料經過壓縮 f為不壓縮 標記2乙個位元組 w 標記2 乙個位元組 s 版本號 乙個位元組 flash版本號如 0x06表示為版本6 檔案長度 四個位元組 整個檔案大小 楨大小 rect 顯示的矩形框大小...