Crear archivos zip con javascript

Publicado el 26 julio 2013 por Marcostrfn @bajolinux

Zip con Javascript

Javascript es un lenguaje cada vez mas completo. La capacidad de trabajar de lado del cliente le confiere una serie de características que los programadores no pueden dejar de aprovechar. Entre ellas está la de crear archivos zip con javascript.

Para crear un archivo zip basta con incluir en tu pagina el script de http://stuk.github.io/jszip/

  1. <script type="text/javascript" src="https://raw.github.com/Stuk/jszip/master/jszip.js"></script>

Y a continuación un ejemplo de como formar el archivo zip usando una función javascript.

  1. function crear_zip() {
  2. var zip = new JSZip();
  3. zip.file("Hola.txt", "Hola mundo\n");
  4. var content = zip.generate();
  5. location.href = "data:application/zip;base64," + content;
  6. }

Llamando a esta función se creará el archivo “hola.txt” y se iniciará su descarga.

Si usas Firefox o Safari puedes encontrar que al nombre de la descarga se le añada .part.

Para solucionar este problema puedes incluir un enlace como el siguiente:

  1. <a id="blob" href="#">click para descargar</a>

Y una función que al cargar la página, en su evento onload, asigne a este enlace el fichero a descargar:

  1. window.onload = function () {
  2.   var zip = new JSZip();
  3.   zip.file("Hola.txt", "Hola mundo\n");
  4.   // Blob
  5.   var blobLink = document.getElementById('blob');
  6.   try {
  7.   blobLink.download = "hola.zip";
  8.   blobLink.href = window.URL.createObjectURL(zip.generate({type:"blob"}));
  9.   } catch(e) {
  10.   blobLink.innerHTML += " (not supported on this browser)";
  11.   }
  12. }

Puedes descargar el ejemplo completo en el siguiente enlace:

Ejemplo-zip-javascript
ejemplo-zip-javascript.zip
Versión: 0.1
1.8 KiB
0 Downloads
Details

Ejemplo de crear archivos zip con javascript

Autor: marcos

Category: Descargas

Date: julio 25, 2013

Crear archivos zip con javascript publicado en BajoLinux.