【问题标题】:Reading all files from a JSzip object folder and iterate从 JSzip 对象文件夹中读取所有文件并迭代
【发布时间】:2018-09-21 05:32:47
【问题描述】:

我有一个代码,用于生成包含图像的压缩文件。

var zip = new JSZip(result.templateEncoded, {base64: true});

压缩后的文件结构如下所示:

{ "files":
        {
          "test/rel":{
                      "name":"xxx.txt"
                     },
          "test/doc.xml":{
                         "name":"kajdadnkan"
                         },
          "test/media/image1.jpeg":{
                                   "name": "word/media/image1.jpeg"
                                   },
          "test/media/image1.jpeg":{
                                   "name": "word/media/image2.jpeg"
                                   }
        }
}

现在我想访问“测试/媒体”下的所有图像。当我尝试 zip.folder('word/media/');它会创建一个新文件夹并将根路径设置为“word/media/”

也试过下面的代码,但它抛出 JS 错误 forEach() is not supported function.

zip.folder('word').forEach(function (relativePath, file){
                            console.log("iterating over..", relativePath);
                        });

基本上,我想提取所有媒体文件并将它们重命名为 .png。 我在这里没有太多的曝光,所以感​​谢任何帮助。

【问题讨论】:

    标签: javascript jszip


    【解决方案1】:
     var contentTypesettings = zip.files["test/media"].asText();
    var CTXMLDoc = $.parseXML(contentTypesettings);
    $(CTXMLDoc).find('Default').each(function() {
        $.each(this.attributes, function(i, attrib) {
            var attrName = attrib.name;
            var attrValue = attrib.value;
         });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-03
      • 2013-06-20
      • 2021-01-08
      • 1970-01-01
      相关资源
      最近更新 更多