如何在Java中进行LZW解码?

如何在Java中进行LZW解码?,java,decoding,lzw,Java,Decoding,Lzw,我有一个数据库,其中包含以二进制blob形式存储的图片数据。文件上说数据是用LZW编码的。我原以为可以使用Java库中的Zip或GZip输入流对其进行解码,但没有成功——我遇到了一个异常,说数据的格式不正确 据我所知,库使用DEFLATE,而不是LZW。此外,我还阅读了一些关于使用LZW算法的许可问题 我可以用什么来解码数据?有图书馆吗?我必须自己实施吗?许可问题如何?这里有几个链接: 还有其他的 事实上,如果图像是LZW压缩的TIFF文件,则显然支持直接解码(尽管看起来不是这样)。您

我有一个数据库,其中包含以二进制blob形式存储的图片数据。文件上说数据是用LZW编码的。我原以为可以使用Java库中的Zip或GZip输入流对其进行解码,但没有成功——我遇到了一个异常,说数据的格式不正确

据我所知,库使用DEFLATE,而不是LZW。此外,我还阅读了一些关于使用LZW算法的许可问题


我可以用什么来解码数据?有图书馆吗?我必须自己实施吗?许可问题如何?

这里有几个链接:

还有其他的


事实上,如果图像是LZW压缩的TIFF文件,则显然支持直接解码(尽管看起来不是这样)。

您也可以尝试使用内部使用7zip库的。它很容易使用。

在找到一个适用于我的案例的LZW实现之前,我经历了数量惊人的LZW实现


当我需要解包一个.pax文件时,我发现这个问题已经过时了,但我只是想添加一个关于LZW的好资源:


更具体地说,是关于在GIF图像中使用LZW,但它很好地解释了压缩和解压缩算法。

LZW算法本身已获得专利,但专利在2003年到期。它们不是TIFF文件,它们只是图像光栅数据,我只对解码感兴趣。谢谢你的资源!