我有一个数据库,其中包含存储为二进制 blob 的图片数据。文档说数据是使用 LZW 编码的。我以为我可以使用 Java 库中找到的 Zip 或 GZip 输入流对其进行解码,但它不起作用 - 我收到一个异常,表示数据格式不正确。

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

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

有帮助吗?

解决方案

这里有几个链接:

还有其他的。

事实上,如果图像是 LZW 压缩的 TIFF 文件, Java 高级成像 API 显然支持直接解码(尽管不 编码 它似乎)。

其他提示

我知道这个问题是旧的,但我只是想补充一个很好的资源约LZW:

http://www.matthewflickinger.com/lab/whatsinagif/lzw_image_data.asp

这是更具体地约在GIF图像的使用LZW的,但它说明了压缩和解压缩算法相当好。

您也可以尝试与它使用7zip的库内部的7-Zip JBinding 。这是很容易使用。

在找到适合我的案例之前,我经历了数量惊人的 LZW 实现。

未压缩的输入流 来自 BioJava项目 当我需要解压 .pax 文件时,它为我工作。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top