分かりやすく解説!Node.jsでCSVファイルを扱う方法【初心者向け】

初心者向けにNode.jsでcsvファイルを扱う方法について解説しています。csvモジュールをインストールするコマンドやcsvの使い方を説明しています。実際にcsvファイルを使う時に参考にしてみてください。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

今回はNode.jsでcsvを扱う方法を解説します。

csvファイルを簡単に扱えるcsvモジュールをインストールし、実際に利用する流れを説明しています。Node.jsでcsvファイルを扱う際に参考にしてみましょう。

 

なお本記事は、TechAcademyのNode.jsオンライン講座の内容をもとに作成しています。

 

田島悠介

今回はCSVファイルを取り扱う方法について見ていこうか。

大石ゆかり

田島メンター!CSVファイルというのは何ですか〜?

田島悠介

具体的に言うと、値をカンマ(,)で区切ったデータのことを指すんだ。実際に使ってどういうものか確認してみよう。

大石ゆかり

分かりました!

Node.jsでcsvを扱うためには

Node.jsとは

Node.jsとは、JavaScriptで実行できるサーバーサイドの環境です。

 

CSVとは

CSVとは、カンマを1カラムの区切り文字として使用し、改行コードを1レコードの区切り文字として使用したテキストデータです。

エクセルのデータを、他のアプリケーションでも汎用的に使用する際などに使われる形式です。

CSVは、Comma Separated Valueの略です。

 

npmのcsvパッケージの使い方

Node.jsでCSVを取り扱うためにはnpmのcsvモジュールを利用する方法があります。

実務上でnpmのcsvモジュールを使用するのは、JSONデータとcsvの変換作業やcsvデータの読み書き作業時です。

npmとはについての記事も参考にしてみて下さい。

 

npmのcsvモジュールのインストール方法

コマンド

npm install csv

解説

npm install csvでcsvモジュールをインストールします。

npmのインストール方法もまとめているので、必要であればチェックしてみてください。

 

田島悠介

まずはcsvモジュールのインストールを行おう。

大石ゆかり

ここでもnpm installですね。

田島悠介

続いて、JSONデータをCSV形式に変換するよ。以下のソースコードを入力し、それを実行してみよう。

[PR] Node.jsで挫折しない学習方法を動画で公開中

Node.jsのCSVを実際に使ってみよう

npmのcsvでJsonデータをcsvに変換する方法

ソースコード

const csv = require('csv')
const input = [ [ "1", "2", "3", "4" ], [ "30歳からの転職", "未経験からのエンジニア", "短期集中プログラミング", "現役エンジニアがオンライン指導" ] ];
csv.stringify(input, function(output){
  console.log(output);
});

表示結果

[ '1', '2', '3', '4' ],
[ "30歳からの転職", "未経験からのエンジニア", "短期集中プログラミング", "現役エンジニアがオンライン指導" ]

 

解説

1行目のconst csv = require(‘csv’)ではrequire(‘csv’)で呼び出したcsvモジュールをconst csvで宣言した再代入不可の変数csvに代入します。

2行目のconst input = [ [ “1”, “2”, “3”, “4” ], [ “30歳からの転職”, “未経験からのエンジニア”, “短期集中プログラミング”, “現役エンジニアがオンライン指導” ] ];では、配列データの[ [ “1”, “2”, “3”, “4” ], [ “30歳からの転職”, “未経験からのエンジニア”, “短期集中プログラミング”, “現役エンジニアがオンライン指導” ] ];を、const input で宣言した再代入不可の変数input に代入しています。

3行目のcsv.stringify(input, function(output){では、変数inputの内容をcsvに変換している処理です。

csv.stringify( )の引数に、 inputという変換前の配列と、function(err, output)というコールバック関数を指定します。

function(output)というコールバック関数の引数にはoutputというcsv変換された後の文字列を指定します。

4行目のconsole.log(output);では、csv変換された後の文字列outputをconsole.logを使用して表示します。

 

今回はNode.jsでcsvを扱う方法を解説しました。

Node.jsの学習サイトもまとめているので、合わせて参考にしてみてください。

 

田島悠介

ここではJSONのデータをCSVにし、その内容を出力するようにしてみたよ。

大石ゆかり

変換後のデータが表示されましたね。

田島悠介

逆にCSV形式のデータをJSONに変換することもできるんだ。必要に応じて使い分けてみよう。

大石ゆかり

そちらの方も調べておきます。ありがとうございました!

また、オンラインのプログラミングスクールTechAcademyでは、Node.jsオンライン講座を開催しています。

Node.jsを使ってWebアプリケーションを開発することができます。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間で習得することが可能です。