ホームページ > 記事 > ウェブフロントエンド > ファイルがnodejsに存在するかどうかを検出する方法
検出方法: 1. "fs.exists(path,callback)" を使用します。 2. "await util.promisify(fs.stat)('file path')" を使用します。 3. "fs.exists(path,callback)" を使用します。アクセス(パス[,モード],コールバック);"。
このチュートリアルの動作環境: Windows7 システム、nodejs バージョン 14.15.4、DELL G3 コンピューター。
#ファイルが存在するかどうかを検出する Nodejs メソッド:
#1. fs.exists## を使用します。 #exists()関数は、特定のパスの下にファイルが存在するかどうかをテストできます。構文形式:
fs.exists(path, callback)path 検出するファイルのパス
現在、fs.exists は廃止されました。さらに、ファイルが直接使用されない場合にのみ存在することを明確にする必要があります。例:
fs.exists('/etc/passwd', function (exists) { util.debug(exists ? "it's there" : "no passwd!"); });
2. fs.stat を使用します
fs.stat は、ファイル サイズなど、ファイルに関する多くの情報を提供する fs.Stats オブジェクトを返します。作成時間などstats.isDirectory() と stats.isFile() という 2 つのメソッドがあり、ディレクトリであるかファイルであるかを判断するために使用されます。
const stats = await util.promisify(fs.stat)('text1.txt'); console.log(stats.isDirectory()); // false console.log(stats.isFile()); // trueファイルが存在するかどうかだけを確認する場合は、次の fs.access を使用することをお勧めします。
3. fs.access を使用します
fs.access はモード パラメータを受け取り、ファイルが存在するか、読み取り可能か、書き込み可能かどうかを判断します。戻り値は err です。パラメータ。
const file = 'text.txt'; // 检查文件是否存在于当前目录中。 fs.access(file, fs.constants.F_OK, (err) => { console.log(`${file} ${err ? '不存在' : '存在'}`); }); // 检查文件是否可读。 fs.access(file, fs.constants.R_OK, (err) => { console.log(`${file} ${err ? '不可读' : '可读'}`); }); // 检查文件是否可写。 fs.access(file, fs.constants.W_OK, (err) => { console.log(`${file} ${err ? '不可写' : '可写'}`); }); // 检查文件是否存在于当前目录中、以及是否可写。 fs.access(file, fs.constants.F_OK | fs.constants.W_OK, (err) => { if (err) { console.error( `${file} ${err.code === 'ENOENT' ? '不存在' : '只可读'}`); } else { console.log(`${file} 存在,且可写`); } });[推奨学習:「
nodejs チュートリアル
」]以上がファイルがnodejsに存在するかどうかを検出する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。