Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #30165

Re: Exception in thread "main" java.util.zip.ZipException: Not in GZIP format

Path csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!us.feeder.erje.net!news2.arglkargh.de!news.swapon.de!eternal-september.org!feeder.eternal-september.org!mx02.eternal-september.org!.POSTED!not-for-mail
From Mike Amling <mamling@chaff.us>
Newsgroups comp.lang.java.programmer
Subject Re: Exception in thread "main" java.util.zip.ZipException: Not in GZIP format
Date Thu, 23 Oct 2014 09:30:46 -0500
Organization A noiseless patient Spider
Lines 29
Message-ID <m2b3d4$e5a$1@dont-email.me> (permalink)
References <38eee3eb-4817-4a14-b823-4609b421b3fa@googlegroups.com>
Mime-Version 1.0
Content-Type text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding 7bit
Injection-Date Thu, 23 Oct 2014 14:29:56 +0000 (UTC)
Injection-Info mx02.eternal-september.org; posting-host="776bc2d2547a00965cb14ddc8a2ce3c1"; logging-data="14506"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19tGwu8WS0A9DjSJB5cbBAD"
User-Agent Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:24.0) Gecko/20100101 Thunderbird/24.6.0
In-Reply-To <38eee3eb-4817-4a14-b823-4609b421b3fa@googlegroups.com>
Cancel-Lock sha1:O88nlbMfCK8XB8pSzZV7yb7tkIU=
Xref csiph.com comp.lang.java.programmer:30165

Show key headers only | View raw


On 10/23/14 3:51 AM, takouarnauld@gmail.com wrote:
> Good Morning,
>
> I'm trying in my program to Compress/Decompress data using GZIP streams and when using the charset "ISO-8859-1", everything working well but when changing the charset to "UTF-8", i'm getting the Error message "Exception in thread "main" java.util.zip.ZipException: Not in GZIP format".
> this is my code:
>
> public static String compress(String str) throws IOException {
> 	        if (str == null || str.length() == 0) {
> 	            return str;
> 	        }
> 	        System.out.println("String length : " + str.length());
> 	        ByteArrayOutputStream out = new ByteArrayOutputStream();
> 	        GZIPOutputStream gzip = new GZIPOutputStream(out);
> 	        gzip.write(str.getBytes());
> 	        gzip.close();
> 	        String outStr = out.toString("UTF-8");

You have no reason to believe that the byte array output from GZIP is 
the UTF-8 encoding of a String. <a 
href="http://docs.oracle.com/javase/8/docs/api/java/io/ByteArrayOutputStream.html#toString-java.lang.String-">Java 
doc for ByteArrayOutputStream.toString(String encoding)</a> says that 
"This method always replaces malformed-input and unmappable-character 
sequences with this charset's default replacement string". After that 
replacement, you can never recover the original contents of the byte 
array from the resultant String.

--Mike Amling
SWYgeW91IHdhbnQgdG8gcmVwcmVzZW50IGFuIGFyYml0cmFyeSBieXRlIGFycmF5IGFzIGEgU3Ry
aW5nLCB1c2UgaGV4IG9yIGJhc2UgNjQu

Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Find similar | Unroll thread


Thread

Exception in thread "main" java.util.zip.ZipException: Not in GZIP format takouarnauld@gmail.com - 2014-10-23 01:51 -0700
  Re: Exception in thread "main" java.util.zip.ZipException: Not in GZIP format Martin Gregorie <martin@address-in-sig.invalid> - 2014-10-23 11:19 +0000
  Re: Exception in thread "main" java.util.zip.ZipException: Not in GZIP format Steven Simpson <ss@domain.invalid> - 2014-10-23 14:31 +0100
  Re: Exception in thread "main" java.util.zip.ZipException: Not in GZIP format Mike Amling <mamling@chaff.us> - 2014-10-23 09:30 -0500

csiph-web