Nodefsモジュール

Node.jsのfsモジュールは、ファイルシステムと対話するための便利な関数を提供します

ザ・fsモジュールは、ファイルシステムにアクセスして対話するための非常に便利な機能を多数提供します。

インストールする必要はありません。ノードコアの一部であるため、以下を要求することで使用できます。

const fs = require('fs')

これを行うと、次のようなすべてのメソッドにアクセスできるようになります。

  • fs.access():ファイルが存在し、ノードがその権限でファイルにアクセスできるかどうかを確認します
  • fs.appendFile():ファイルにデータを追加します。ファイルが存在しない場合は、作成されます
  • fs.chmod():渡されたファイル名で指定されたファイルのアクセス許可を変更します。関連:fs.lchmod()fs.fchmod()
  • fs.chown():渡されたファイル名で指定されたファイルの所有者とグループを変更します。関連:fs.fchown()fs.lchown()
  • fs.close():ファイル記述子を閉じる
  • fs.copyFile():ファイルをコピーします
  • fs.createReadStream():読み取り可能なファイルストリームを作成する
  • fs.createWriteStream():書き込み可能なファイルストリームを作成する
  • fs.link():ファイルへの新しいハードリンクを作成する
  • fs.mkdir():新しいフォルダを作成します
  • fs.mkdtemp():一時ディレクトリを作成します
  • fs.open():ファイルモードを設定する
  • fs.readdir():ディレクトリの内容を読み取る
  • fs.readFile():ファイルの内容を読み取ります。関連:fs.read()
  • fs.readlink():シンボリックリンクの値を読み取る
  • fs.realpath():相対ファイルパスポインタを解決します(...)フルパスへ
  • fs.rename():ファイルまたはフォルダの名前を変更します
  • fs.rmdir():フォルダを削除します
  • fs.stat():渡されたファイル名で識別されるファイルのステータスを返します。関連:fs.fstat()fs.lstat()
  • fs.symlink():ファイルへの新しいシンボリックリンクを作成します
  • fs.truncate():渡されたファイル名で識別されるファイルを指定された長さに切り捨てます。関連:fs.ftruncate()
  • fs.unlink():ファイルまたはシンボリックリンクを削除します
  • fs.unwatchFile():ファイルの変更の監視を停止します
  • fs.utimes():渡されたファイル名で識別されるファイルのタイムスタンプを変更します。関連:fs.futimes()
  • fs.watchFile():ファイルの変更の監視を開始します。関連:fs.watch()
  • fs.writeFile():データをファイルに書き込みます。関連:fs.write()

についての1つの独特なことfsモジュールでは、すべてのメソッドはデフォルトで非同期ですが、追加することで同期的に機能することもできますSync

例えば:

  • fs.rename()
  • fs.renameSync()
  • fs.write()
  • fs.writeSync()

これにより、アプリケーションフローに大きな違いが生じます。

ノード10には実験的サポートのために約束するベースのAPI

たとえば、fs.rename()方法。非同期APIはコールバックで使用されます:

const fs = require('fs')

fs.rename(‘before.json’, ‘after.json’, (err) => { if (err) { return console.error(err) }

//done })

同期APIは、エラーを処理するためのtry / catchブロックとともに、次のように使用できます。

const fs = require('fs')

try { fs.renameSync(‘before.json’, ‘after.json’) //done } catch (err) { console.error(err) }

ここでの主な違いは、2番目の例では、ファイル操作が成功するまで、スクリプトの実行がブロックされることです。

私の無料ダウンロードNode.jsハンドブック


その他のノードチュートリアル: