您好,登錄后才能下訂單哦!
首先要整第三方庫 , 在上一篇中已經有所介紹 , 這里不講。
關于 jszip和AS的aszip差不多一樣。
這里我寫了三個文件 : a.txt , b.xml , c.json 打包到一個 ziptest.zip的壓縮包中。
a.txt:
b.xml:
c.json:
ziptest.zip的位置:
核心代碼 :::
private loadZip() : void{ RES.getResByUrl("resource/ziptest.zip", function(data):void{ let zipj : JSZip = new JSZip(data); this.analysisJSZip( zipj ); },this, RES.ResourceItem.TYPE_BIN); } private analysisJSZip( zipj : JSZip ) : void{ //a.txt解析 let txtstr : JSZipObject = zipj.file("ziptest/a.txt"); console.log('Txt content is ' + txtstr.asText()); //b.xml解析 let xmlstr : JSZipObject = zipj.file("ziptest/b.xml"); let xmlConfig : egret.XML = egret.XML.parse(xmlstr.asText()); console.log("the xml root name is : " + xmlConfig.name); let xmlChileren : Array<egret.XMLNode> = xmlConfig.children; let xmlChildrenLen : number = xmlChileren.length; let xmlCell : egret.XML = null; for( let i : number = 0 ; i < xmlChildrenLen ; i ++ ){ xmlCell = <egret.XML><any>xmlChileren[i]; if( xmlCell.name == "role" ){ let xmlName : egret.XML = <egret.XML><any>xmlCell.children[0];//獲得<name str="Aonaufly"/> console.log("xml role name is : " + xmlName["$str"]); break; } } //c.json解析 let jsonstr : JSZipObject = zipj.file("ziptest/c.json"); let jsonc : any = JSON.parse( jsonstr.asText() ); console.log("json name is : " + jsonc.name); }
關于 zipj.file("ziptest/a.txt");
結果:
遍歷Zip中的文件名
const $zip : JSZip = new JSZip( xmlData ); const $files : object = $zip["files"]; for(var key in $files){ console.log(key); //鍵名 }
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。