在javascript中解压缩gzip和zlib字符串 [英] Decompress gzip and zlib string in javascript
本文介绍了在javascript中解压缩gzip和zlib字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想从tmx文件中获取压缩层数据。谁知道在javascript中解压缩gzip和zlib字符串的库?我尝试 zlib 但它对我不起作用。例如,tmx文件中的图层数据是:
I want to get compress layer data from tmx file . Who knows libraries for decompress gzip and zlib string in javascript ? I try zlib but it doesn't work for me . Ex , layer data in tmx file is :
<data encoding="base64" compression="zlib">
eJztwTEBAAAAwqD1T20JT6AAAHgaCWAAAQ==
</data>
我的javascript代码是
My javascript code is
var base64Data = "eJztwTEBAAAAwqD1T20JT6AAAHgaCWAAAQ==";
var compressData = atob(base64Data);
var inflate = new Zlib.Inflate(compressData);
var output = inflate.decompress();
它运行时显示消息错误不支持的压缩方法。但我尝试使用在线工具解压缩为 http://i-tools.org/gzip ,它会返回正确的字符串。
It runs with displays message error "unsupported compression method" . But I try decompress with online tool as http://i-tools.org/gzip , it returns correct string.
推荐答案
我可以通过 zlib <解决我的问题/ a>。我将代码修改如下
I can solve my problem by zlib . I fix my code as below
var base64Data = "eJztwTEBAAAAwqD1T20JT6AAAHgaCWAAAQ==";
var compressData = atob(base64Data);
var compressData = compressData.split('').map(function(e) {
return e.charCodeAt(0);
});
var inflate = new Zlib.Inflate(compressData);
var output = inflate.decompress();
这篇关于在javascript中解压缩gzip和zlib字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文