Home  >  Article  >  Backend Development  >  如何用java读取php的gzencode函数输出的压缩字符

如何用java读取php的gzencode函数输出的压缩字符

WBOY
WBOYOriginal
2016-06-02 11:33:551372browse

phpjavagzdecode

输入的字符串为php的gzencode压缩的字符串,可以用gzdecode解开,但是用java的java.util.zip.GZIPInputStream读入字符串时,总是提示:
java.util.zip.ZipException: Not in GZIP format
希望有经验的朋友帮我解答一下,我的代码如下:

<code> JAVAimport java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.InputStream;import java.io.OutputStream;import java.util.zip.GZIPInputStream;import java.util.zip.GZIPOutputStream;public class Gzdecode {    public static void decompress(InputStream is, OutputStream os)            throws Exception {        GZIPInputStream gis = new GZIPInputStream(is);        int count;        byte data[] = new byte[BUFFER];        while ((count = gis.read(data, 0, BUFFER)) != -1) {            os.write(data, 0, count);        }        gis.close();    }    public static byte[] decompress(byte[] data) throws Exception {          ByteArrayInputStream bais = new ByteArrayInputStream(data);          ByteArrayOutputStream baos = new ByteArrayOutputStream();           // 解压缩           decompress(bais, baos);           data = baos.toByteArray();          baos.flush();          baos.close();           bais.close();           return data;      }        public static void main(String[] args) throws Exception    {        String input="";        byte[] data=input.getBytes("UTF-8");        byte[] data_decompress=decompress(data);        System.out.write(data_decompress);</code>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn