当前位置:  开发笔记 > 编程语言 > 正文

为什么使用JSZip压缩率是0

如何解决《为什么使用JSZip压缩率是0》经验,为你挑选了1个好方法。

我使用以下代码将可下载的xml文件转换为zip,但文件大小仍然相同,压缩率显示为0%

    var xmlcontent = "";
    xmlcontent += json2xml(data);
    xmlcontent += "";

    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);

    });

压缩的原因是为了减少客户端检索到的文件的大小,但显然对它没有影响。请提出一种减小文件大小的方法。



1> Andreas..:

文件的默认压缩设置为STORE(=无压缩)-如文档中所述

DEFLATE使用options参数将其更改为.generateAsync(options)

var zip = new JSZip();
zip.file("test1.xml", xmlcontent);
zip.generateAsync({
        type: "blob",
        compression: "DEFLATE"
    })
    .then(function (content) {
            ...
    });

推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有