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

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

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

作成日: 更新日:

基本的な使い方

appendFileSyncメソッドは、指定されたファイルに同期的にデータを追記するメソッドです。このメソッドはNode.jsのファイルシステム(fs)モジュールの一部として提供されており、ファイルへの追記操作をシンプルに実行できます。

具体的には、第一引数に追記先のファイルパス、第二引数に追記したいデータ(文字列、Buffer、またはUint8Array形式)を指定します。オプションとして第三引数にオブジェクトを渡すことで、データのエンコーディング形式やファイルのアクセスモードなどを細かく設定することが可能です。例えば、'utf8'エンコーディングでデータを追記するといった制御ができます。

このメソッドの重要な特徴は「同期処理」である点です。これは、ファイルへの追記処理が完了するまで、プログラムの次の行が実行されないことを意味します。そのため、処理が非常に高速に終わる小規模なログの記録や設定ファイルの更新などには適していますが、大量のデータ追記やネットワーク経由のファイル操作など、完了に時間がかかる可能性のある処理に使用すると、プログラム全体の応答性を低下させてしまう可能性があるため注意が必要です。

処理中にファイルが見つからない、アクセス権がないなどのエラーが発生した場合、appendFileSyncメソッドは例外をスローします。そのため、堅牢なアプリケーションを開発する際には、try-catchブロックを用いて例外を適切に捕捉し、エラーハンドリングを行うことが重要です。このメソッドは成功した場合、特に値を返しません。

構文(syntax)

1const fs = require('fs');
2fs.appendFileSync('file_path.txt', 'content to append');

引数(parameters)

path, data, options

  • path: string | URL | Buffer | string[] | URL[] | Buffer[]: 書き込むファイルのパス。複数のパスを指定することも可能です。
  • data: string | Buffer | Uint8Array | string[] | Buffer[] | Uint8Array[]: ファイルに書き込むデータ。複数のデータを指定することも可能です。
  • options?: { encoding?: string | null; mode?: number; flag?: string; signal?: AbortSignal; }: ファイルの書き込みに関するオプションを指定します。
    • encoding?: string | null: データのエンコーディングを指定します。デフォルトは 'utf8' です。
    • mode?: number: ファイルのパーミッションを指定します。デフォルトは 0o666 です。
    • flag?: string: ファイルのオープンモードを指定します。デフォルトは 'a' (追記) です。
    • signal?: AbortSignal: 操作を中止するためのシグナルを指定します。

戻り値(return)

undefined

appendFileSyncメソッドは、指定されたファイルにデータを非同期で追記します。このメソッドは、処理が正常に完了しても、明示的な戻り値はありません。

関連コンテンツ

関連プログラミング言語