Aujourd’hui, nous allons voir comment ouvrir un fichier javascript, en utilisant un sélecteur de fichiers, dans des applications javascript sous Windows 8, et traiter les fichiers individuellement un par un.
D’abord, nous téléchargeons la bibliothèque zip.js depuis ici voici les fichiers qui nous intéressent. inflate.js(compresser), deflate.js (dézipper)
// Creamos el objeto picker, con las opciones deseadas
varopenPicker=newWindows.Storage.Pickers.FileOpenPicker();openPicker.viewMode=Windows.Storage.Pickers.PickerViewMode.list;openPicker.suggestedStartLocation=Windows.Storage.Pickers.PickerLocationId.documentsLibrary;//Establecemos los formatos que queremos capturar
openPicker.fileTypeFilter.replaceAll([".zip",".ZIP"]);// pickSingleFilesAsync si solo queremos uno
openPicker.pickMultipleFilesAsync().then(function(file){if(file.size>0){for(vari=0;i<file.size;i++){//imaginemos que contiene ficheros de texto
file[i].openReadAsync().then(function(stream){if(myFile){//Creamos un blob del archivo zip
varblob=MSApp.createBlobFromRandomAccessStream(myFile.contentType,stream);//Para blob
zip.createReader(newzip.BlobReader(blob),function(reader){// Obtenemos los ficheros
reader.getEntries(function(entries){//Accedemos a cada fichero
entries.forEach(function(item){item.getData(newzip.TextWriter(),function(data){//"data" contiene el texto del fichero
});});});},function(error){// Error callback
});}});}}else{//Se ha presionado cancelar
}});
Comme nous pouvons le voir, de cette manière simple, nous pourrons ouvrir des fichiers zip avec zip.js et winJS.
Cela s’applique aux fichiers texte (à l’intérieur du zip), avec un codage UTF-8, nous verrons bientôt comment travailler avec d’autres encodages tels que ISO 5598-1, ISO 5598-15, etc.