2013-01-17 68 views
0

GZIP的大小限制爲4GB,從http://www.gzip.org/#faq10得到它 上面的鏈接中提到的一些補丁能夠讀取大於4GB的文件。尺寸限制gzipinputstream

我正在使用GZIPInputStream來讀取.gz文件。

而且我還可以讀取大於4GB的大小。我知道我在java中混合了輸入流和實際的gzip可執行文件。

但我想知道這是否可能是一個問題呢?

例如 - 會不會有我不能讀取java中的6Gb .gz文件的情況?直到現在我試過了,我沒有遇到任何問題。

總之,gzip文件大小限制和java中的gzipinputstream之間是否存在關係?

回答

1

正如您所說,重要的是區分gzip該工具和gzip的文件格式。

在Verison 1.2.4之前,前者不支持大於4GB的文件。

後者在RFC 1952中指定,並且沒有固有的4GB限制。

Java的RFC 1952實現似乎也沒有任何4GB的限制。我經常使用GZIPInputStream(Java 1.6/1.7)讀取大文件,並且從來沒有遇到過問題。

+0

好,所以根本不應該有任何問題。謝謝 – Abi

+0

早於java 1.6的版本呢? – Abi

+0

@Abi:恐怕沒有第一手經驗。嘗試一下,看看會發生什麼。如果它打破了,你會很快發現它。 – NPE

0

此限制僅涉及gzip程序。因此,如果正確寫入,您的應用程序不應該有超過4GB的讀/寫文件的問題。

但是,請記住,試圖閱讀您所寫的4GB +文件的人在使用gzip程序時可能會遇到一些問題。