2013-07-27 2 views
2

Я использую phonegap для разработки приложения для Android, а также нужно разархивировать файлы (в том числе .png и .txt) с SD-карты.Разархивировать файлы с помощью zip.js в phonegap

Использование zip.js может считывать структуру zip-файла с SD-карты, например, файл/каталог, но когда я пытаюсь раздуть zip-файл и получить содержимое файла, он дает незаконную ошибку конструктора.

Я пробовал много раз, но безуспешно. Как я могу это сделать?

function readZip3() 
{ 
    var fullPath = $('#dir_path').val() + "/" + "2151849.zip"; 
    fs.root.getFile(fullPath, {}, function (fileEntry) { 
     fileEntry.file(function (file) { 

      var dateBefore = new Date(); 

      zip.createReader(new zip.BlobReader(file), function (zipReader) { 
       zipReader.getEntries(function (entries) { 
        alert(entries[28].filename);       
        entries[28].getData(new zip.BlobWriter(), function (data) { 

         alert(data); 
         $('#result').append(data); 

         zipReader.close(function() { 

         }); 
        }, function(current, total) { 
         // onprogress callback 
        }); 

       }); 
      }, onerror); 

      var dateAfter = new Date(); 
      $('#time').html(" (parsed in " + (dateAfter - dateBefore) + "ms)"); 

     }, errorHandler); 
    }, errorHandler); 

} 
+0

Вы можете разместить код, который вы имеете до сих пор? – CodingIntrigue

+0

уверен, что записи [28] являются текстовым файлом. alert (записи [28] .filename) может успешно распечатать имя файла – Roger

+0

Привет @Roger, как вы исправили ошибку в конце? –

ответ

0

Я сделал PR, чтобы исправить эту проблему: https://github.com/gildas-lormeau/zip.js/pull/70

Dupe здесь: Can i use zip.js in phonegap?

+0

спасибо, я попробую его – Roger

+0

Я пробовал новый zip.js. на этот раз он не дает недопустимой ошибки конструктора, но печатает «Неуязвимая ошибка хрома: -6» в Eclipse. Ps: Я использую phonegap v2.9 – Roger

Смежные вопросы