node.jsでファイルやディレクトリが存在するかどうかを調べる

ファイルやディレクトリが存在するかどうかを調べるには、次の関数を使用します。

fs.exists(path, callback)は非推奨になりました。

fs.existsSync(path)

fs.existsSync(path)は、ファイルやディレクトリが存在する場合はtrueを、存在しない場合はfalseを返します。

const fs = require('fs');
const path = 'sample.txt';
if (fs.existsSync(path)) {
    console.log('ファイル・ディレクトリは存在します。');
} else {
    console.log('ファイル・ディレクトリは存在しません。');
}

fs.statSync(path)

fs.statSync(path)は、ファイルやディレクトリが存在しない場合は例外を投げます。
ファイルやディレクトリが存在しない場合はエラーコードが’ENOENT’になります。

const fs = require('fs');

const path = 'sample.txt';

try {
  fs.statSync(path);
  console.log('ファイル・ディレクトリは存在します。');
} catch (error) {
  if (error.code === 'ENOENT') {
    console.log('ファイル・ディレクトリは存在しません。');
  } else {
    console.log(error);
  }
}

fs.stat(path, callback)

fs.statSync(path)は、ファイルやディレクトリが存在しない場合は、エラーオブジェクトのエラーコードが’ENOENT’になります。

const fs = require('fs');

const path = 'sample.txt';

fs.stat(path, (error, stats) => {
  if (error) {
    if (error.code === 'ENOENT') {
      console.log('ファイル・ディレクトリは存在しません。');
    } else {
      console.log(error);
    }
  } else {
    console.log('ファイル・ディレクトリは存在します。');
  }
});

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください