如何使用 JavaScript 压缩文件?

2024-05-12

有没有办法使用 JavaScript 来压缩文件?例如,在雅虎邮件中,当您选择下载电子邮件中的所有附件时,它会被压缩并下载到单个 zip 文件中。 JavaScript 能够做到这一点吗?如果是这样,请提供一个编码示例。

我发现这个图书馆叫jszip https://stuk.github.io/jszip/完成任务,但存在已知和未解决的问题。

我该如何解决这个问题?


JSZip 多年来一直在更新。现在您可以在它的 GitHub 存储库 https://github.com/Stuk/jszip

它可以与文件保存器.js https://github.com/eligrey/FileSaver.js/

您可以使用 npm 安装它们:

npm install jszip --save
npm install file-saver --save

然后导入并使用它们:

import JSZip from 'jszip';
import FileSaver from 'file-saver';

const zip = new JSZip();
zip.file('idlist.txt', 'PMID:29651880\r\nPMID:29303721');
zip.generateAsync({ type: 'blob' }).then(function (content) {
    FileSaver.saveAs(content, 'download.zip');
});

然后,您将下载一个名为 download.zip 的 zip 文件,解压后,您可以在其中找到一个名为 idlist.txt 的文件,该文件有两行:

PMID:29651880
PMID:29303721

为了供您参考,我使用以下浏览器进行了测试,并且全部通过:

  • 火狐 59.0.2(Windows 10)
  • Chrome 65.0.3325.181(Windows 10)
  • 微软边缘41.16299.371.0(Windows 10)
  • Internet Explorer 11.0.60 (Windows 10)
  • Opera 52(Mac OSX 10.13)
  • Safari 11(Mac OSX 10.13)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 JavaScript 压缩文件? 的相关文章

随机推荐