如果在BlackBerry中使用相同的数据压缩数据,如何使用Java中的GZIP解压缩数据

时间:2009-06-01 13:32:24

标签: java blackberry compression

我编写了一个示例程序,用于在黑莓中使用GZIP压缩和解压缩数据。 这个程序工作正常。我编写了一个示例程序,用Java中的GZIP压缩和解压缩数据。这个程序也很好。但是,如果我使用BlackBerry压缩数据。我无法解压缩java中的数据。

3 个答案:

答案 0 :(得分:4)

如果您按照BlackBerry {1}}的BlackBerry Javadocs中提供的示例代码进行操作,则应该正确压缩它。

示例代码

public static byte[] compress( byte[] data )
{   
    try
    {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        GZIPOutputStream gzipStream = new GZIPOutputStream( baos, 6, GZIPOutputStream.MAX_LOG2_WINDOW_LENGTH );
        gzipStream.write( data );
        gzipStream.close();
    }
    catch(IOException ioe)
    {
        return null;
    }

    return baos.toByteArray();
}

答案 1 :(得分:2)

您应该尝试像gzip工具本身一样参考GZIP实现。然后,您将更好地了解您的哪些目标不符合标准。

答案 2 :(得分:0)

当你说“我编写了一个示例程序”时,你的意思是你编写了自己的GZIP代码,还是编写了一个使用GZIPInputStream的程序?

如果您只想要一些有用的东西,那么您一定要使用核心Java库。

如果您正在努力满足您对GZIP工作方式的好奇心,并希望将自己的代码编写为学习练习,那么您必须提供更多详细信息。