مسع*_*عود 6 javascript xml compression jszip
我使用以下代码将可下载的xml文件转换为zip,但文件大小仍然相同,压缩率显示为0%
var xmlcontent = "<?xml version='1.0' encoding='UTF-8'?><Body>";
xmlcontent += json2xml(data);
xmlcontent += "</Body>";
var zip = new JSZip();
zip.file("test1.xml", xmlcontent);
zip.generateAsync({ type: "blob" })
.then(function (content) {
var a = document.createElement("a");
document.body.appendChild(a);
a.style = "display: none";
var url = window.URL.createObjectURL(content);
a.href = url;
a.download = "test.zip";
a.click();
window.URL.revokeObjectURL(url);
});
Run Code Online (Sandbox Code Playgroud)
压缩的原因是为了减少客户端检索到的文件的大小,但显然对它没有影响。请提出一种减小文件大小的方法。
文件的默认压缩设置为STORE(=无压缩)-如文档中所述
DEFLATE使用options参数将其更改为.generateAsync(options)
var zip = new JSZip();
zip.file("test1.xml", xmlcontent);
zip.generateAsync({
type: "blob",
compression: "DEFLATE"
})
.then(function (content) {
...
});
Run Code Online (Sandbox Code Playgroud)