我想在IOS端用LZ4压缩数据,想在Java端解压。
我对 IOS使用LZ4 压缩和流压缩方法,对 Java 使用jpountz ()。
它在解压缩时在 Java 端失败。(看起来两个平台的 LZ4 标头不同。)
请帮忙!
如果不可能,您能否推荐任何适用于 JAVA 和 IOS 的可互操作 LZ4 库?
我想在IOS端用LZ4压缩数据,想在Java端解压。
我对 IOS使用LZ4 压缩和流压缩方法,对 Java 使用jpountz ()。
它在解压缩时在 Java 端失败。(看起来两个平台的 LZ4 标头不同。)
请帮忙!
如果不可能,您能否推荐任何适用于 JAVA 和 IOS 的可互操作 LZ4 库?
IOS 的 LZ4 和 jpountz 都使用自己的标头封装数据。由于这些标头不同,因此它们无法相互读取。
您必须了解每种标头格式,并在两者之间实现某种形式的转换层。一旦标头被修复,其余的有效负载(压缩数据本身)应该是可读的。
另一种可能性是使用不同的 LZ4 库,符合官方 LZ4 帧格式。LZ4 主页维护了一个兼容编解码器的列表,其中一个是 Java 版本。
C 参考版本可以在 iOS 上使用。它是可移植的,并且通常与 Objective-C 兼容。用于使用lz4frame.h
官方帧格式进行封装。