NodeJs簡明教程(4)

2611 ワード

NodeJs簡明教程はゼロからNodeJs関連の知識を学び、JS開発者を支援して全スタック開発技術スタックを構築します.
本論文はNodeJs簡明教程の第四編で、NodeJsファイルシステムモジュールに関する基本的な操作を紹介します.
fsモジュールは、標準的なPOSIX関数を模倣する方法でファイルシステムと相互作用するAPIを提供する.
ファイルを読み込みます
ファイルシステムのほとんどの関数には、非同期呼び出しという2つの形態があります.
非同期
非同期モードでは、コールバック関数の最初のパラメータは常にErrオブジェクトであり、関数は一般的にリターン値がない.
  • nullであれば、今回の呼び出しはエラーがない
  • です.
  • nullでなければ、今回の呼び出しエラーが証明されます.
    新規index.jsファイル:
    const fs = require('fs');
    
    fs.readFile('./index.js', { encoding: 'utf8' }, (err, data) => {
        if (err) {
            console.error('      ', err);
            return;
        }
        console.log(data);
    })
    readFileの第二のパラメータが符号化を指定しない場合、コールバック関数が取得したdataのオブジェクトはBufferであり、文字列を手動で変換する必要がある.テキストファイルを読み込むと符号化を指定できますが、バイナリファイルを読み込む( )
  • は、現在のディレクトリでnode index.js
  • を実行する.
  • 出力は以下の通りです.
    const fs = require('fs');
    
    fs.readFile('./index.js', { encoding: 'utf8' }, (err, data) => {
        if (err) {
            console.error('      ', err);
            return;
        }
        console.log(data);
    })
  • です.
    同期モード
    同期モードでは、戻り値が呼び出された関数の結果、起動に失敗した場合は、Errオブジェクトが投げ出されます.
    const fs = require('fs');
    
    try {
        const data = fs.readFileSync('./index.js', { encoding: 'utf8' });
        console.log(data);
    } catch (e) {
        console.log('    ', e)
    }
    出力データと同期モードが一致します.
    同期モードと非同期モードでエラーを処理する方法は異なることが見られます.
    読者の皆様は生産において、できるだけ同期関数を使わないでください.でないと、イベントの循環をブロックします.
    もちろん、設定ファイルを同期して読み込ませてからサーバーを起動する場合は例外があります.
    ファイルに書き込みindex.jsを新設しました.コードは以下の通りです.
    const fs = require('fs');
    
    const data = 'Hello World';
    
    fs.writeFile('./a.txt', data, (error) => {
        if (error) {
            console.error('    ', error);
            return;
        }
        console.log('    ');
    })
  • 実行node index.js
  • を出力し、現在のディレクトリにはHello Worldのテキストファイルが追加されます.
  • 一般API
  • fs.copyFile(src,dest[,flags],callback)コピーファイル
  • fs.stat(path[,options],callback)ファイル状態
  • を読みだします.
  • fs.unlink(path,callback)ファイルを削除する
  • fs.rename(oldPath,newPath,callback)ファイルの名前を変更する
  • fs.mkdir(path[,options],callback)新規ディレクトリ
  • fs.rmdir(path,callback)は、ディレクトリ
  • を削除する.
    おわりに
    ファイルシステムの勉強はここまでにします.使う時にはファイルを詳しく調べられます.ファイルシステムの関数呼び出し方式と本文の例は同じです.Nodejs 公衆番号の継続的な更新とオンラインの質疑応答を歓迎します.