久しぶりにNode.jsの勉強。

Nodeでファイルを読み込む

Node.jsでファイルの読み書きやファイルシステムの操作を行うときは、fsモジュールを使用する。
まずはファイルの読み込みからやってみる。
以下のファイルを用意する。

vi test.txt
------------
test
hoge
------------

で、上記のtest.txtファイルを読み込むNodeのサンプルは以下の通り。

var fs = require(fs);
fs.readFile(./test.txt, utf8, function (err, text) {
    console.log(text file!);
    console.log(text);
    console.log(error!?);
    console.log(err);
});

実行する。

$ node readtest.js 

結果は以下の通り。

[sysmgr@localhost node]$ node readtest.js 
text file!
test
hoge

error!?
null

ちゃんと読み込めてますね。
次に、ファイルにアクセスできなくしたらどうなるか??

$ chmod 000 test.txt 

として、さっきのnodeを実行すると・・・

[sysmgr@localhost node]$ node readtest.js 
text file!
undefined
error!?
{ [Error: EACCES, open './test.txt'] errno: 3, code: 'EACCES', path: './test.txt' }

今度はエラーメッセージをちゃんと出力しています。
次に、readFileSync関数を使って読み込んでみる。
さっきのJavaScriptを以下のように書き換える。

var fs = require(fs);
var text = fs.readFileSync(test.txt, utf-8);
console.log(text);

結果は以下のようになる。

[sysmgr@localhost node]$ node readtest.js 
test
hoge

勉強した本

はじめてのNode.js -サーバーサイドJavaScriptでWebアプリを開発する-

はじめてのNode.js -サーバーサイドJavaScriptでWebアプリを開発する-

  • 作者: 松島浩道
  • 出版社/メーカー: ソフトバンククリエイティブ
  • 発売日: 2013/03/15
  • メディア: 大型本
  • クリック: 15回
  • この商品を含むブログ (5件) を見る

Node初心者御用達だと思う。
自分が初心者なんだけど、この本のおかげで今のところつまづいていない!