Learn about our RFC process, Open RFC meetings & more.Join in the discussion! »

convert-csv-to-json

1.0.0 • Public • Published

CSVtoJSON

Build Status Code Climate NPM Version Downloads

This project is not dependent on others packages or libraries.

Table of Contents

  1. Description
  2. Prerequisites
  3. Install npm convert-csv-to-json package
  4. Usage
  5. License
  6. Buy me a Coffee

Description

Converts csv files to JSON files with Node.js.

Give an input file like:

first_name last_name email gender age
Constantin Langsdon clangsdon0@hc360.com Male 96
Norah Raison nraison1@wired.com Female 32

e.g. :

first_name;last_name;email;gender;age
Constantin;Langsdon;clangsdon0@hc360.com;Male;96
Norah;Raison;nraison1@wired.com;Female;32

will generate:

[
 {
  "first_name": "Constantin",
  "last_name": "Langsdon",
  "email": "clangsdon0@hc360.com",
  "gender": "Male",
  "age": "96"
 },
 {
  "first_name": "Norah",
  "last_name": "Raison",
  "email": "nraison1@wired.com",
  "gender": "Female",
  "age": "32"
 }
]

Prerequisites

NPM (see Installing Npm).

Install npm convert-csv-to-json package

Go to NPM package convert-csv-to-json.

Install

Install package in your package.json

$ npm install convert-csv-to-json --save

Install package on your machine

$ npm install -g convert-csv-to-json

Usage

Generate JSON file

let csvToJson = require('convert-csv-to-json');
 
let fileInputName = 'myInputFile.csv'; 
let fileOutputName = 'myOutputFile.json';
 
csvToJson.generateJsonFileFromCsv(fileInputName,fileOutputName);

Generate Array of Object in JSON format

let csvToJson = require('convert-csv-to-json');
 
let json = csvToJson.getJsonFromCsv("myInputFile.csv");
for(let i=0; i<json.length;i++){
    console.log(json[i]);
}

Define field delimiter

As default the filed delimiter is the semicolon (;). You can define another field delimiter by call the function fieldDelimiter(myDilimiter). If you want that the field delimiter is a ~:

 csvToJson.fieldDelimiter('~') .getJsonFromCsv(fileInputName);

Format property value by type

If you want that a number will be printed as a Number type and not as a String type, use:

 csvToJson.formatValueByType().getJsonFromCsv(fileInputName);

In this case the result will be:

[
 {
  "first_name": "Constantin",
  "last_name": "Langsdon",
  "email": "clangsdon0@hc360.com",
  "gender": "Male",
  "age": 96
 },
 {
  "first_name": "Norah",
  "last_name": "Raison",
  "email": "nraison1@wired.com",
  "gender": "Female",
  "age": 32
 }
]

The property age is printed as

 "age"32

instead of

  "age""32"

License

CSVtoJSON is licensed under the GNU General Public License v3.0 License.

Buy me a Coffee

Just if you want to support this repository:

  • BTC tip address: 3KCCK292a61AHrKuVCFZ8Agr3j31Zw8Mzg

Install

npm i convert-csv-to-json

DownloadsWeekly Downloads

4,292

Version

1.0.0

License

ISC

Unpacked Size

147 kB

Total Files

23

Last publish

Collaborators

  • avatar