ファイルの読み込みを行う
'use strict';
const fs = require('fs');
const readline = require('readline');
const rs = fs.ReadStream('./popu-pre.csv');
const rl = readline.createInterface({'input': rs, 'output': {} });
rl.on('line', (lineString) => {
console.log(lineString);
});
rl.resume();
Const fs = require(‘fs’);
Const deadline = require(‘deadline’);
Node.jsに用意されたモジュールを呼び出す
Node.jsにおけるモジュールとなるオブジェクトの呼び出し
fs (FileSystem)
ファイルを扱うためのモジュール
readline
ファイルを一行ずつ読み込むためのモジュール
const rs = fs.ReadStream('./popu-pref.csv');
const rl = readline.createInterface({ 'input': rs, 'output': {} });
popu-pref.csvファイルからファイルの読み込みを行うStreamを作成し、さらにそれをreadlineオブジェクトのinputとして設定し、rlオブジェクトを作成している
Stream??
Node.jsでは出入力が発生する処理をほとんどStreamという形で扱う
Streamとは、非同期情報を取り扱うための概念で、情報自体ではなく情報の流れに注目する
Node.jsでStreamを扱う際には、Streamに対してイベントを監視し、イベントが発生した際に呼び出される関数を設定することによって情報を利用する
イベント駆動型プログラミング
あらかじめイベントが発生した時に実行される関数を設定しておいて、起こったイベントに応じて処理を行うこと
const rl = readline.createInterface({ 'input': rs, 'output': {} });
rlというオブジェクトもStreamのインターフェースを持っている
利用する際には以下のようなコードになる
rl.on('line', (lineString) => {
console.log(lineString);
});
rl.resume( );
rlオブジェクトでlineというイベントが発生したタイミングで、コンソールに引数lineStringの内容が出力される。
resumeメソッドの呼び出しはストリームに情報を流し始める処理
オブジェクトの振る舞いを作ることのできる関数が設定されたプロパティのことをメソッドと呼ぶ
まとめ
Streamの概念がまだよくわからない、なんとなく書いてるだけな感覚があるので詳しい人教えてください、、、
とりあえずもっとたくさん書いてみよう