情報アイランド

「情報を制する者は世界を制す」をモットーに様々な情報を提供することを目指すブログです。現在はプログラミング関連情報が多めですが、投資関連情報も取り扱っていきたいです。

Node.jsでモジュールと同じフォルダのファイルを操作する

モジュールが保存されているのと同じフォルダのファイルを操作するにはまず操作するファイルのパスを取得しなければなりません。

モジュールが保存されているのと同じフォルダのファイルのパスを取得するにはmodule.filenamepath.dirname関数とpath.join関数を組み合わせます。

path.dirname関数の第1引数にmodule.filenameを指定して呼び出すと返り値としてモジュールが保存されているフォルダのパスが得られます。

そして、path.join関数の第1引数にこのパスを指定し、第2引数に操作するファイルの名前を指定して呼び出すと返り値として操作するファイルのパスが得られます。

var path = require('path');

var p = path.join(path.dirname(module.filename), 'xxx');

操作するファイルのパスが得られたら下のようなモジュールを利用してファイルに対する操作を行います。

  • fs
  • fs-extra
  • mkdirp
  • rimraf
  • ncp
  • chokidar

サンプルコード1

path-dirname-join-1.js

var path = require('path');

var m2 = require('./folder/path-dirname-join-2');

console.log(path.join(path.dirname(module.filename), 'textfile.txt'));

folder\path-dirname-join-2.js

var path = require('path');

console.log(path.join(path.dirname(module.filename), 'textfile.txt'));

実行結果

C:\work\node>node path-dirname-join-1.js
C:\work\node\folder\textfile.txt
C:\work\node\textfile.txt

関連

pizyumi
プログラミング歴19年のベテランプログラマー。業務システム全般何でも作れます。現在はWeb系の技術を勉強中。
スポンサーリンク

-Node.js