【发布时间】:2019-04-08 06:26:50
【问题描述】:
我最终不得不使用如下所示的 Javascript 文件中的一些数据:
注意:base64 仅供参考。
function GetTripsDataCompressed() { return 'QlpoOTFBWSZTWdXoWuEDCAgfgBAHf/.....=='; }
GetTripsDataCompressed() 返回一个 base64 字符串,该字符串派生为使用 JSON.NET 转换为 JSON 的对象数组,然后使用 @987654321 将结果字符串压缩为 bzip2 @ 将生成的内存流 Base64 编码。
这是我所拥有的,无法改变。
我正在努力寻找一个 bzip2 JavaScript 实现,它将获得以下结果:
var rawBzip2Data = atob(GetTripsDataCompressed());
并将 rawBzip2Data 转换回作为 JSON 数组的字符串。我不能使用 compressjs 之类的东西,因为我需要支持 IE 10,因为它使用 typed arrays,这意味着 IE10 支持已停止。
所以看来我最好的选择是https://github.com/antimatter15/bzip2.js,但是因为我没有创建一个存档并且只 bzip2 一个字符串,它在做之后会引发Uncaught No magic number found 的错误:
var c = GetTripsDataCompressed();
c = atob(c);
var arr = new Uint8Array(c);
var bitstream = bzip2.array(arr);
bzip2.simple(bitstream);
那么任何人都可以在这里帮助我使用符合 IE 10 的脚本从 JavaScript 解压缩 BZip2、Base64 编码的字符串吗?最终我不在乎它是使用 https://github.com/antimatter15/bzip2.js 还是其他一些原生 JavaScript 实现。
【问题讨论】:
标签: javascript bzip2 sharpcompress