命名由 JSZip 创建的 .zip 文件
Name .zip file created by JSZip
我正在使用 JSZip 并且正在创建一个 .zip 文件,其中包含多个 .xml 文件,如下所示:
// get each xml in string format and add it to zip object
let zip = new JSZip();
for(let i = 0; i < containers.length; i++){
let xml = getXML(i);
zip.file("file"+i+".xml", xml);
}
// download the .zip file
zip.generateAsync({
type: "base64"
}).then(function(content) {
window.location.href = "data:application/zip;base64," + content;
});
.zip 文件已完美创建和下载,但文件名是默认文件名 "download file"。我想做的是随意给这个文件起一个名字(例如allXMLs.zip)。
我查看了 JSZip 文档,但没有发现任何真正有启发性的内容,我们将不胜感激。
您可以创建一个带有 'download' 属性的锚标记,这样您就可以对文件名进行一些控制。
zip.generateAsync({
type: "base64"
}).then(function(content) {
var link = document.createElement('a');
link.href = "data:application/zip;base64," + content;
link.download = "your-file-name.zip";
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
});
在文档中,它建议使用一个名为 [FileSaver.js].1 See here 的附加库,用于项目操作方法中给出的示例。
我正在使用 JSZip 并且正在创建一个 .zip 文件,其中包含多个 .xml 文件,如下所示:
// get each xml in string format and add it to zip object
let zip = new JSZip();
for(let i = 0; i < containers.length; i++){
let xml = getXML(i);
zip.file("file"+i+".xml", xml);
}
// download the .zip file
zip.generateAsync({
type: "base64"
}).then(function(content) {
window.location.href = "data:application/zip;base64," + content;
});
.zip 文件已完美创建和下载,但文件名是默认文件名 "download file"。我想做的是随意给这个文件起一个名字(例如allXMLs.zip)。
我查看了 JSZip 文档,但没有发现任何真正有启发性的内容,我们将不胜感激。
您可以创建一个带有 'download' 属性的锚标记,这样您就可以对文件名进行一些控制。
zip.generateAsync({
type: "base64"
}).then(function(content) {
var link = document.createElement('a');
link.href = "data:application/zip;base64," + content;
link.download = "your-file-name.zip";
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
});
在文档中,它建议使用一个名为 [FileSaver.js].1 See here 的附加库,用于项目操作方法中给出的示例。