慕桂英3389331
2022-07-14 16:39:02
有沒有辦法確保一旦我使用 Java 中的庫壓縮文件。我可以用任何其他支持 GZIP 庫的語言解壓縮文件。我可以看到 GZIP 由數據格式規范https://www.rfc-editor.org/rfc/rfc1952支持但是沒有看到更多資源來驗證 GZIP 的平臺獨立性
2 回答
慕尼黑8549860
TA貢獻1818條經驗 獲得超11個贊
GZIP 格式與平臺無關。它將格式定義為八位字節序列,并且獨立于平臺或網絡硬件字節順序問題。您可以通過仔細閱讀規范來確認這一點。
任何正確實現 GZIP 規范1的工具都應該處理由任何其他平臺上的任何其他(符合規范的)工具創建的 GZIP 文件。
有幾個小警告:
GZIP 文件可以選擇對原始(源)文件名進行編碼。規范說可選文件名應該由 ISO 8859-1 字符組成。如果源文件名包含未映射到 ISO 8859-1 的字符,或者您正在解碼的系統無法將所有 ISO 8859-1 字符映射到用于文件名的字符集,則這是一個限制。
GZIP 文件可以選擇包含修改時間戳,表示為從 "00:00:00 GMT, Jan. 1, 1970" 2的偏移量。正如規范所指出的,這在 GMT / UTC 時間不可用的平臺上可能會出現問題;例如 MS-DOS。
創建和讀取 GZIP 文件的工具應該能夠處理這個問題。例如,作為 Linux 發行版標準提供的 GNU gzip 工具有一個--no-name選項,告訴命令不要保存或恢復原始文件名和時間戳。
1 - 對于不正確實施規范的工具,所有賭注都被取消。但是您不太可能在野外找到這樣的工具。
2 - 規范說的是 GMT,而不是 UTC。我只是引用它所說的話。
添加回答
舉報
0/150
提交
取消
