Node.js では、「 ファイル記述子 」は、ファイル記述子テーブル内の単に負でない整数のインデックスです。ファイル記述子テーブルは、「」内の配列です。 PCB(プロセスコントロールブロック) 」は、オペレーティング システムのすべてのプロセスの記録を保持します。これは、オペレーティング システムで開かれたファイルを簡単に識別またはアクセスするために使用される、開かれたファイルの参照として機能します。開いたファイルに「」経由でアクセスすると、 ファイル記述子 」を選択すると、ユーザーは要件に従って目的の操作を実行できます。
この記事では、ユーザーが Node.js でファイル記述子を操作する方法を説明します。
Node.js でファイル記述子を操作するにはどうすればよいですか?
ユーザーは、以下に示す事前定義されたメソッドを使用してファイル記述子を取得する方法で、ファイル記述子を操作できます。 fs ” モジュール:
これらの方法を 1 つずつ詳しく説明していきます。
方法 1: 「fs.open()」を使用してファイル記述子を取得する
” fs.open ()」は、「」の最も一般的に使用される方法です。 fs 」モジュールは、ファイルの読み取り、書き込み、名前変更、更新、削除などのいくつかの操作を実行するためにファイルを非同期的に開きます。さらに、「」も返します。 ファイル記述子 コールバック関数を通じて、開かれたファイルに対して定義された操作を実行した後。
構文
「」の基本的な構文 fs.open ()」メソッドは以下のように記述されます。
fs. 開ける ( ファイル名 、 フラグ 、 モード 、 折り返し電話 )上記の構文によれば、「 fs.open ()」メソッドは次のパラメータをサポートしています。
- ファイル名 : ユーザーが開きたい特定のファイルの名前とパスを指定します。
- フラグ : 開かれたファイルに対して実行される操作を示します。デフォルト値はデフォルトで「r(read)」です。
- モード :「」であるファイルのパーミッションを示します。 0o666(読み取り可能および書き込み可能) 」がデフォルトで設定されています。
- 折り返し電話 :「」の完了後に実行されます。 fs.open ()' 方法。をサポートします。 エラー 」パラメータは、メソッドの実行中に発生した場合にエラーをスローします。 'データ' 「」を返すパラメータ fd(ファイル記述子) ” 開いているファイルにアクセスします。
戻り値: ” fs.open() ” は、戻り値としてファイル記述子を返します。
Node.js でファイル記述子とともに使用されるさまざまな使用可能なフラグ
「」のすべての種類のフラグ fs.open() 」メソッドは、開かれたファイルに対して必要な操作を実行するためのサポートを以下に示します。
フラグ | 説明 |
---|---|
で | これは、開いているファイルにコンテンツを書き込むために使用され、それを提示せずに新しいファイルが作成されます。 |
w+ | ファイルを開いて読み取りおよび書き込み操作を実行するために使用されます。 |
wx | 「」と同じように機能します。 で ”。ただし、指定されたファイルがファイル システムに存在しない場合は作成されません。 |
wx+ | 「」と同じです。 w+ ” ただし、ファイルが存在しない場合は失敗します。 |
r | ファイルを開いて読み取り、ファイルが存在しない場合は新しいファイルを作成します。 |
r+ | ファイルを読み取り可能および書き込み可能モードで開きます。 |
RS+ | ファイルを同期的に開き、ファイルに対する読み取りと書き込みのタスクを実行します。 |
ある | ファイルを開き、その内容を追加します。 |
α+ | ファイルを開き、その内容を読み取り、追加します。 |
斧 | 「」と同じです。 ある 」と表示されますが、ファイル システム内に新しいファイルがない場合は、新しいファイルは作成されません。 |
斧+ | 「」と同じように機能します。 α+ ” ただし、新しいファイルは作成されません。 |
「」の基礎を身につけたら、 fs.open ()」メソッドを使用して、ファイル記述子を取得する実際の実装に移りましょう。
例: 「fs.open()」メソッドを適用してデフォルトのフラグを持つファイル記述子を取得する
この例では、 「fs.open()」 指定されたファイルを開いて読み取り、ファイル記述子を返すメソッド:
定数 fs = 必要とする ( 「fs」 ) ;だった レス = fs. 開ける ( 「ファイル.txt」 、 「r」 、 関数 ( エラー 、 fd ) {
もし ( エラー ) {
コンソール。 エラー ( エラー ) ;
} それ以外 {
コンソール。 ログ ( 「ファイルが開きました!」 ) ;
コンソール。 ログ ( fd ) ; }
} ) ;
上記のコードブロックの説明は次のとおりです。
- まず、「 必要とする ()' メソッドは ' fs(ファイルシステム) 」モジュール。
- 次に、「 fs.open ()” メソッドは、希望のフォルダー名、デフォルトのフラグを指定します。 r 」、およびコールバック関数をそれぞれその 1 番目、2 番目、および 3 番目の引数として指定します。コールバック関数はさらに「 エラー ' そしてその ' fd 」という議論。このメソッドは、指定されたファイルを読み取り用に開き、指定されたコールバック関数を実行します。
- コールバック関数の定義では、「 もし ” ステートメントは” を使用します コンソール.エラー() 」メソッドを使用して、指定したファイルを開くときに発生するエラー メッセージを表示します。
- エラーが発生しない場合は、「 それ以外 ” ステートメントは、” を利用して実行されます。 コンソール.ログ ()」メソッドを使用して、検証メッセージと「」で示される「ファイル記述子」を表示します。 fd ' 口論。
出力
ここで、「」を含む実行を実行します。 アプリ .js」ファイルは次の方法でダウンロードできます。
ノードアプリ。 js以下の出力は、ファイルが読み取り用に開かれていることを示し、ファイル記述子も返します。
方法 2: 「fs.openSync()」を使用してファイル記述子を取得する
” fs.openSync ()」は、「」の事前定義されたメソッドです。 fs 」モジュールは、ファイルを同期的に開き、読み取り、書き込み、名前変更、更新、削除などの一般的な操作を実行します。このメソッドは、基本的な機能に加えて、「 ファイル記述子 「」のようにコールバック関数を呼び出すのではなく、直接「 fs.open ()' 方法。
構文
fs. オープンシンク ( パス 、 フラグ 、 モード )上記の「」で使用されるパラメータ fs.openSync() 」の方法を以下に説明します。
- パス : 特定のファイルの名前とパスを文字列、URL、またはバッファの形式で指定します。
- フラグ : 開かれたファイルに対して実行される操作を指定する文字列または数値を示します。デフォルト値はデフォルトで「r(read)」です。
- モード : 「」であるファイルのパーミッションを示します。 0o666(読み取り可能および書き込み可能) 」がデフォルトで設定されています。
戻り値: ” fs.openSync() 」は、ファイル記述子を示す整数を戻り値として提供します。
「」に関する詳細なガイドに従ってください。 fs.openSync() メソッド 」の実用化に向けて。
方法 3: 「fsPromise.open()」を使用してファイル記述子を取得する
” fsPromises.open() ” は、” の事前定義されたメソッドです。 fs ” プロミスとしてファイルを非同期的に開き、” を返すモジュール ファイル記述子 ”。 Promise が解決された場合は、指定されたフォルダーが開かれていることを確認し、そうでない場合はエラー オブジェクトで拒否されます。
構文
fs約束。 開ける ( ファイル名 、 フラグ 、 モード )” fsPromises.open ()」メソッドは、次の 3 つのパラメータで動作します。
- ファイル名 : デフォルトでユーザーが読み取りたい特定のファイル名とパスを文字列、URL、またはバッファの形式で伝えます。
- フラグ : 開かれたファイルに対して実行する操作を指定する文字列または非負の整数値の場合があります。デフォルト値はデフォルトで「r(read)」です。
- モード : ファイルのアクセス許可を指定します。 0o666(読み取り可能および書き込み可能) 」がデフォルトで設定されています。
戻り値: それは「」を与えます 約束 ”の戻り値として” fsPromises.open ()' 方法。
「」に関する詳細なガイドに従ってください。 fsPromises.open() メソッド 」の実用化に向けて。
Node.js のファイル記述子を使用してどのようなさまざまな操作を実行できますか?
ファイル記述子を取得すると、ユーザーはそれを使用して特定のファイルにアクセスし、開く、閉じる、読み取り、書き込みなどのさまざまな操作を実行できます。これらの特定の操作を実行するには、「 ファイルシステムモジュール ”。
Node.js でのファイル記述子の操作については以上です。
結論
ファイル記述子を操作するには、「 fs.open()」、「fs.openSync()」 '、 または ' fsPromises.open() Node.jsの「メソッド」。これらのメソッドはすべてファイルを開いて、「」で指定されたファイルに対してさまざまな操作を実行します。 フラグ ”パラメータを返し、また” ファイル記述子 ” これは開かれたファイルの参照です。この記事では、Node.js でファイル記述子を操作する方法について詳しく説明しました。