Zlib 从 python 到 java
Zlib from python to java
我在python中使用这个:
test = zlib.compress(test, 1)
现在我想在 java 中使用它,但我不知道如何使用。
最后我需要将结果转换为字符串...
我等你的帮助!谢谢
您可以尝试使用 RPC 创建服务器。
https://github.com/irmen/Pyro4
并使用 java 访问该服务器。
您需要更具体地描述您想要实现的目标。
您是否只是想解压一段 zlib 压缩的数据?
或者您正在寻找一种在 Python 和 Java 之间交换数据的方法,可能是通过网络传输数据?
对于前者,它基本上是将压缩数据流粘贴在 Inflater
(而不是 Deflater
!)中。类似于:
Inflater decompresser = new Inflater();
decompresser.setInput(data);
ByteArrayOutputStream bos = new ByteArrayOutputStream(data.length);
byte[] buffer = new byte[8192];
while (!decompresser.finished()) {
int size = decompresser.inflate(buffer);
bos.write(buffer, 0, size);
}
byte[] unzippeddata = bos.toByteArray();
decompresser.end();
对于后者,alex 的回答已经指向 Pyro/Pyrolite。
我在python中使用这个:
test = zlib.compress(test, 1)
现在我想在 java 中使用它,但我不知道如何使用。 最后我需要将结果转换为字符串... 我等你的帮助!谢谢
您可以尝试使用 RPC 创建服务器。
https://github.com/irmen/Pyro4
并使用 java 访问该服务器。
您需要更具体地描述您想要实现的目标。
您是否只是想解压一段 zlib 压缩的数据? 或者您正在寻找一种在 Python 和 Java 之间交换数据的方法,可能是通过网络传输数据?
对于前者,它基本上是将压缩数据流粘贴在 Inflater
(而不是 Deflater
!)中。类似于:
Inflater decompresser = new Inflater();
decompresser.setInput(data);
ByteArrayOutputStream bos = new ByteArrayOutputStream(data.length);
byte[] buffer = new byte[8192];
while (!decompresser.finished()) {
int size = decompresser.inflate(buffer);
bos.write(buffer, 0, size);
}
byte[] unzippeddata = bos.toByteArray();
decompresser.end();
对于后者,alex 的回答已经指向 Pyro/Pyrolite。