ファイルやディレクトリが存在するかどうかを調べるには、次の関数を使用します。
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('ファイル・ディレクトリは存在します。');
}
});