Llegir fitxers .xls a Node: la llibreria que faltava

Necessites llegir un .xls d'Excel 97-2003 a Node? xls-reader és lleugera, sense dependències, amb tipus i publicada amb procedència a npm.

lunes, 6 de julio de 2026 • 3 min de lectura • Equip Q2BSTUDIO

xls-reader: parseja BIFF8 sense dependències

La migració de sistemes legacy cap a entorns moderns continua sent un dels reptes més comuns en el desenvolupament de programari corporatiu. Un cas paradigmàtic és la lectura de fitxers .xls (format binari d'Excel 97-2003) en aplicacions Node.js. Tot i que semblava un problema resolt, la realitat és que la majoria de les llibreries populars, com ExcelJS, només suporten el format .xlsx, i SheetJS —la referència tradicional per a .xls— ha quedat fora del registre npm, amb versions congelades que presenten vulnerabilitats conegudes. Aquesta situació obliga els equips tècnics a replantejar les seves estratègies d'integració de dades històriques, especialment quan es manegen fitxers que poden contenir informació sensible o financera.

Davant d'aquesta mancança, ha sorgit xls-reader, una llibreria lleugera (aproximadament 4 KB min+gzip) que s'enfoca exclusivament en la lectura de fitxers .xls amb format BIFF8. El seu disseny sense dependències d'execució i la seva compatibilitat amb navegadors gràcies a l'ús d'Uint8Array i DataView la converteixen en una opció ideal per a pipelines d'ETL lleugers i aplicacions web de gestió documental. A més, en estar publicada a npm amb provenance, permet verificar la integritat del codi mitjançant signatures CI, un detall crucial per a entorns amb requisits estrictes de ciberseguretat. Aquesta característica és especialment rellevant en projectes on es necessita auditar cada dependència, una cosa que Q2BSTUDIO aplica sistemàticament en els seus desenvolupaments d'aplicacions a mida per evitar sorpreses en les anàlisis de vulnerabilitats.

La llibreria retorna les cel·les tipificades automàticament: cadenes, números, booleans i dates com a objectes Date reals, mentre que les cel·les buides o amb errors es representen com a null. Això simplifica el mapatge a estructures JSON, cosa que encaixa perfectament amb fluxos de serveis d'intel·ligència de negoci que requereixen extreure dades històriques de fulls de càlcul antics. Per exemple, una empresa que conserva informes comptables en .xls pot processar-los mitjançant scripts Node.js i abocar-los a un data warehouse al núvol. En aquest context, els serveis cloud aws i azure que ofereix Q2BSTUDIO permeten orquestrar pipelines serverless que executin l'extracció amb xls-reader de manera segura i escalable.

Per descomptat, la llibreria és de només lectura i no gestiona formats, gràfics ni cel·les combinades. El seu abast està deliberadament acotat. Per a escriptura de fitxers o suport de .xlsx, continuen sent necessàries eines com ExcelJS o SheetJS. Però la seva existència resol un buit real: una alternativa lleugera, auditable i sense dependències ocultes per llegir dades binàries d'Excel antics. En projectes on l'automatització de processos inclou la ingesta de dades heretades, disposar d'una peça així evita introduir vectors d'atac innecessaris, un principi que Q2BSTUDIO integra en les seves solucions d'ia per a empreses i agents IA, on la traçabilitat de la font de dades és crítica.

En definitiva, xls-reader demostra que de vegades la solució més eficaç és construir el que falta, aplicant criteris moderns de seguretat i minimalisme. Per a equips que desenvolupen programari a mida per a sectors com banca, assegurances o logística —on els formats legacy continuen vigents— aquesta llibreria es converteix en un aliat tècnic. I si a més es combina amb eines de visualització com power bi, es pot transformar un lot de fitxers .xls en dashboards actualitzats sense comprometre la integritat del sistema. Q2BSTUDIO aposta per aquest enfocament pragmàtic i segur en tots els seus projectes de transformació digital.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.