Convert XLS to CSV on the server in Node [closed] Convert XLS to CSV on the server in Node [closed] node.js node.js

Convert XLS to CSV on the server in Node [closed]


There is no library that I am aware of, but you could use node-xlsx to parse the excel file, get the rows and make the CSV yourself. Here's an example:

var xlsx = require('node-xlsx');var fs = require('fs');var obj = xlsx.parse(__dirname + '/test.xls'); // parses a filevar rows = [];var writeStr = "";//looping through all sheetsfor(var i = 0; i < obj.length; i++){    var sheet = obj[i];    //loop through all rows in the sheet    for(var j = 0; j < sheet['data'].length; j++)    {            //add the row to the rows array            rows.push(sheet['data'][j]);    }}//creates the csv string to write it to a filefor(var i = 0; i < rows.length; i++){    writeStr += rows[i].join(",") + "\n";}//writes to a file, but you will presumably send the csv as a      //response insteadfs.writeFile(__dirname + "/test.csv", writeStr, function(err) {    if(err) {        return console.log(err);    }    console.log("test.csv was saved in the current directory!");});


I am using this package to convert XLSX to CSV:https://www.npmjs.com/package/xlsx

XLSX = require('xlsx');const workBook = XLSX.readFile(inputFilename);XLSX.writeFile(workBook, outputFilename, { bookType: "csv" });