Преобразование uncompress () ByteArray в ActionScript3 в Python 3 - PullRequest
0 голосов
/ 29 апреля 2020

Я создал приведенный ниже пример кода в ActionScript3 для выкачивания-распаковки строки:

    var byteArray = new ByteArray();
    byteArray.position = 0;
    byteArray.writeUTF("stackoverflow");
    byteArray.compress("deflate");
    trace("Compressed: " + byteArray.toString());
    byteArray.uncompress("deflate");
    trace("Uncompressed: " + byteArray.toString());

Похоже, что ActionScript3 слегка изменяет RFC1951 для удаления заголовков. В настоящее время я не могу реплицировать фрагмент кода в Python 3. Я пытался использовать библиотеку Py3AMF, однако я не видел метода, позволяющего выполнить дефляцию без сжатия.

Спасибо!

1 Ответ

2 голосов
/ 30 апреля 2020

Решено! Решением является использование

-zlib.MAX_WBITS

Вот фрагмент кода в Python 3:

f = open("decode.txt", "rb")
data = f.readline()
print(data)
print((zlib.decompress(data, -zlib.MAX_WBITS)).decode("utf-8"))
...