120 votes

Comment créer un fichier Excel avec Nodejs ?

Je suis un programmeur nodejs . J'ai maintenant un tableau de données que je veux enregistrer au format Excel. Comment dois-je m'y prendre ?

J'ai trouvé quelques bibliothèques Node. Mais la plupart d'entre elles sont des analyseurs Excel plutôt que des rédacteurs Excel. J'utilise un serveur Linux. J'ai donc besoin de quelque chose qui peut fonctionner sur Linux. S'il vous plaît laissez-moi savoir s'il y a des bibliothèques utiles que vous connaissez.

Ou existe-t-il un moyen de convertir un fichier CSV en fichier xls (par programmation) ?

1voto

Fernando Raposo Points 41

Le premier paramètre est le fichier source

Le deuxième paramètre est le séparateur

Le troisième paramètre est le fichier résultant (*.xlsx).

Attention : pour augmenter le heap de node, utiliser : node --max-old-space-size=4096 index.js

const fs = require('fs');
var xl = require('excel4node');
const data = fs.readFileSync(process.argv[2], 'utf-8');
const lines = data.split(/\r?\n/);
const linesFromOne = [null].concat(lines);
var wb = new xl.Workbook();
var ws = wb.addWorksheet('Planilha 1');
for (let j=1;j<=linesFromOne.length-1;j++){             
  // Create a reusable style
  var style = wb.createStyle({
    font: {
      color: '#050000',
      size: 12,
    },

  });

    pieces = linesFromOne[j].split(process.argv[3])
    pieces.forEach((element, index) =>{
    ws.cell(j, index+1).string(element)
    .style(style);
    });

} 

wb.write(process.argv[4]);

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X