所以我在解压缩最初由 java 中的 java.util.zip.InflaterInputStream 方法压缩的数字数组时遇到了问题。
我知道我做错了什么,因为解压后的输出与此类似(但更长):
string '�������?�����!�A��������������������'
阅读 gzuncompress 时关于此事的 PHP 文档我看到它说:
"This function uncompress a compressed string."
我完全误解了这个函数的用法?或者它可以用于解压缩不仅仅是一个字符串吗?我真的很感激在这方面的一些帮助,因为在对这个主题进行了一些深入的搜索之后,我觉得我没有任何进展。
干杯
最佳答案
我认为您肯定是在误解某事:
java.util.zip.InflaterInputStream
是类而不是方法,它是解压器而不是压缩器。 javadoc说:
"This class implements a stream filter for uncompressing data in the "deflate" compression format."
如果您要在 PHP 端使用 gzuncompress
解压缩,则需要在 Java 端使用 java.util.zip.GZIPOutputStream
进行压缩。
如果你打算在Java端使用java.util.zip.InflaterOutputStream
来压缩,我认为你需要在PHP端使用zlib.inflate
解压缩它 - 请参阅 http://php.net/manual/en/filters.compression.php
关于java - gzuncompress java.util.zip.InflaterInputStream 压缩的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15363468/