Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Node.js24.x】Object::writeFileSync()メソッドの使い方

writeFileSyncメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

writeFileSyncメソッドは、Node.jsのファイルシステム(fs)モジュールに属し、指定されたファイルにデータを同期的に書き込むメソッドです。このメソッドは、プログラムの実行を一時停止させ、ファイルへの書き込み処理が完全に終了するまで待機します。そのため、書き込み処理が完了したことを確認してから次の処理へ進みたい場合に非常に有用です。

このメソッドは通常、fs.writeFileSync(path, data, options)のように使用します。pathには書き込み対象のファイルパスを文字列で指定し、dataにはファイルに書き込む内容を文字列またはBufferオブジェクトで渡します。optionsはオプションで、ファイルのエンコーディング(文字コード)やファイル書き込み時のパーミッションなどを設定できます。

もし指定されたファイルが存在しない場合、writeFileSyncメソッドは新しいファイルを自動的に作成します。また、ファイルが既に存在する場合は、そのファイルの内容を新しいデータで完全に上書きします。そのため、既存のファイルを誤って上書きしてしまわないよう、注意が必要です。

このメソッドの最大の特徴は「同期処理」である点です。ファイルI/Oは通常時間がかかる処理ですが、writeFileSyncを使用すると、その処理が完了するまでNode.jsのイベントループがブロックされます。これにより、特にWebアプリケーションのような応答性が求められる環境では、アプリケーション全体のパフォーマンスに影響を与える可能性があります。そのため、大規模なファイルや頻繁な書き込みには、非同期版のfs.writeFileメソッドの利用が推奨されることが多いです。しかし、スクリプトの起動時における設定ファイルの保存や、簡単なログ出力、テストスクリプトなど、処理がブロックされても問題ない場面では、そのシンプルさから重宝されます。エラーが発生した場合(例: ファイルパスが無効、書き込み権限がないなど)は例外がスローされるため、適切なエラーハンドリングの実装が重要です。

構文(syntax)

const fs = require('node:fs');

fs.writeFileSync('file.txt', 'Hello, Node.js!');

引数(parameters)

path, data, options

  • path: string: 書き込むファイルのパス
  • data: any: ファイルに書き込むデータ
  • options: object: オプションを指定するオブジェクト (省略可能)

戻り値(return)

戻り値なし

戻り値はありません

関連コンテンツ

関連プログラミング言語