Convertir un Archivo Excel a JSON con Sheet JS

Javascript

Demo Github

En determinadas ocasiones necesitas convertir un archivo Excel a JSON, puedes hacerlo con la librería Sheet JS que nos da la posibilidad de convertir un archivo Excel a formato JSON y muchos otros formatos más, teniendo los datos en JSON puedes crear aplicaciones más dinámicas y usables, veamos como hacerlo en este artículo.

Desplegando Sheet JS

Sheet JS esta moderna librería Javascript usa Webworkers para trabajar de manera óptima la ejecución de los procesos a llevar a cabo para convertir un archivo Excel a JSON.

Vamos a declarar el formato que usaremos el cual es XLSX (Extensión de un archivo Excel), asimismo vamos a usar la librería xlsxworker.js para ejecutar en segundo plano el proceso de conversión del archivo Excel a JSON

Bien iniciamos el webworker y el proceso para crear un archivo JSON en segundo plano

Una ves que leemos el formato Excel, pasamos a la creamos el archivo JSON

Por ultimo ejecutamos el evento de mostrar el JSON al cargar un archivo Excel desde el <select>

Aca tenemos el código completo, lo colocamos en un archivo llamado app.js

Vista

Ahora en nuestra vista vamos instanciar 2 archivos uno es nuestro archivo creado app.js y el otro es la libreria de Sheet JS, los colocamos al final antes de cerrar la etiqueta </body>

Por ultimo para nuestro ejemplo vamos a imprimir los datos en una página html, lo que haremos es colocar 2 elementos HTML y selector de archivos <select> y un contenedor de tipo <pre> en donde mostraremos el JSON del archivo Excel que carguemos con el <select>

Conclusión

Puedes leer en la documentación oficial de su repositorio Github más funciones y formatos para manipular archivos Excel, la idea de este artículo es guiarte con los primeros pasos con Sheet JS.

Si deseas ver el resultado final, puedes ver el Demo que esta al inicio de este artículo.

imagen: techlaunch.io

 

Síguenos en las Redes Sociales para que no te pierdas nuestros próximos contenidos.

 

Newsletter

Suscríbete a Nuestro Boletín de Novedades:

(Luego de la suscripción no te va salir ningun mensaje. Solo revisa tu bandeja de Correo para confirmar tu suscripción)
* indicates required