我正在上传一个zip文件夹并尝试读取其XML文件。该函数可以使用JSZip读取zip,但无法检索XML文件的内容。
readasText 需要一个blob对象,我尝试了不同的东西,但它总是给出类型错误。
upload: function (e) {
$("#fullPath").val(e.files[0].name);
if ($.browser.msie == undefined || ($.browser.msie && $.browser.version < 10) == false) {
$("#fullPath").val(e.files[0].name);
var zipFile = new JSZip();
zipFile.loadAsync(e.files[0].rawFile)
.then(function(zip) {
var reader = new FileReader();
reader.readAsText(zip.files);// type error: dont know how to access the xml file
reader.onloadend = function () {
GetValueFile(reader.result);
}
});
}
}
我想将XML结果提供给 GetvalueFile 函数 文件对象位于 zip.files 内,但我无法检索它。
答案 0 :(得分:3)
对于可能遇到同样问题的人
zip.files['test1.xml'].async("string")// gives the content of xml
它返回一个可用于触发更多功能的承诺
.then(function(zip) {
zip.files['test1.xml'].async("string")
.then(function (data) {
GetValueFile(data);
});
});