Node.jsでjsonとcsvを相互変換する方法




JSONとcsvの相互変換

JSONとcsvの相互変換にはnpmモジュールのjson2csvcsvtojsonが便利です。

json → csv変換

jsonからcsvへの変換はjson2csvが便利です。

import json2csv from 'json2csv';

const arrayData = [
    {weight: 10, height: 20},
    {weight: 100, height: 200}
];
const parsedData = json2csv({data: arrayData});

console.log(parsedData);
// weight, height
// 10, 20

上記サンプルをみると一目瞭然なのですが、json2csvのdataキーに渡すだけで簡単にcsvにしてくれます。

csv → json変換

csvtからjsonへの変換はcsvtojsonを使います。

import csvtojson from 'csvtojson';

let parsedList = [];

csvtojson()
    .fromFile('sample.csv')
    .on('json',(jsonObj)=>{
        parsedList.push(jsonObj);
    })
    .on('done',(error)=>{
        console.log('parseList');
    });

こっちはcsvを1行読み込んだら’json’イベントが呼ばれて、全てのcsvの読み込みが完了したら’done’が呼ばれます。

簡単な変換ならこの2つの方法だけで事足りますね。

強いて言うなら、一個のモジュールにまとまっているともっといいのですが。。。

関連記事

上記サンプルコードはES6で書いています。ES6の導入方法は下記リンクを参照してください!!

おすすめ書籍

基礎から応用までサンプルコードを使って解説しており、Node.jsが初めての人でも読める技術書となっています。上級者向けにはExpressフレームワークを使った実用的な開発手法の解説もありこれからアプリケーションを開発する人の参考になると思います。現状では書き方が古くなっていますが、Node.jsの初心者から上級者まで学ぶことの多い書籍です。

The following two tabs change content below.

髙妻智一

2013年CyberAgent新卒入社 スマホゲームを作る子会社に所属し、サーバーサイドのエンジニアを担当。2年目の終わりから新規子会社の立ち上げに参加し、サーバーサイドのエンジニアリーダーとしてサービースのリリースから運用までを担当。 2018年仮想通貨のスマホウォレットを提供するGinco Incにブロックチェーンエンジニアとして入社。






よく読まれている関連記事はこちら




コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です