/

How to Read a CSV File with Node.js

How to Read a CSV File with Node.js

In this tutorial, we will explore how to read data from a CSV file using Node.js. There are several npm modules available that allow us to accomplish this task. Most of these modules utilize streams, such as csv-parser or node-csv, making them efficient choices for handling CSV files in a production system.

However, when performance is not a concern and simplicity is preferred, a module like neat-csv can be a great option. neat-csv simplifies the process of parsing CSV data by providing a straightforward async/await interface.

To get started, we need to install the neat-csv module by running the following command in our terminal:

1
npm install neat-csv

Next, we need to require the module in our Node.js application:

1
const neatCsv = require('neat-csv');

Afterwards, we can load the CSV file from the filesystem using the fs module and pass its content to the neatCsv function:

1
2
3
4
5
6
7
8
9
10
const fs = require('fs');

fs.readFile('./file.csv', async (err, data) => {
if (err) {
console.error(err);
return;
}

console.log(await neatCsv(data));
});

Once the CSV data has been parsed, you can proceed to manipulate and use the data as needed. It will be formatted as a JavaScript array of objects, making it easy to work with.

Tags: Node.js, CSV, file handling, parsing