1

そのため、Javaのjava.util.zip.InflaterInputStreamメソッドによって最初に圧縮された数値の配列を解凍するのに問題があります。

解凍後の出力は次のようになります (ただし、はるかに長い)。

string '�������?�����!�A��������������������'

この問題に関するgzuncompress PHP ドキュメントを読むと、次のように書かれていることがわかります。

「この関数は、圧縮された文字列を解凍します。」

この関数の使用を完全に誤解していますか? または、複数の文字列を解凍するために使用できますか? この件についてかなり深い調査を行った後、どこにも到達していないように感じるので、これについての助けをいただければ幸いです。

乾杯

4

1 に答える 1

3

私はあなたが間違いなく何かを誤解していると思います:

java.util.zip.InflaterInputStreamはメソッドではなくクラスであり、コンプレッサーではなくアンコンプレッサーです。javadocによると:

「このクラスは、 「deflate」圧縮形式でデータを解凍するためのストリームフィルターを実装します。

PHP側でを使用して解凍する場合は、Java側でgzuncompressを使用して圧縮する必要があります。java.util.zip.GZIPOutputStream


Java側で圧縮するために使用する場合は、PHP側で解凍するjava.util.zip.InflaterOutputStream必要があると思います。http://php.net/manual/en/filters.compression.phpを参照してください。zlib.inflate

于 2013-03-12T14:43:19.880 に答える