How do i check the existence of a file?
In the documentation for the module fs
there's a description of the method fs.exists(path, callback)
. But, as I understand, it checks for the existence of only directories. And I need to check the file!
How can this be done?
Why not just try opening the file ? fs.open('YourFile', 'a', function (err, fd) { ... })
anyway after a minute search try this :
var path = require('path');
path.exists('foo.txt', function(exists) {
if (exists) {
// do something
}
});
// or
if (path.existsSync('foo.txt')) {
// do something
}
For Node.js v0.12.x and higher
Both path.exists
and fs.exists
have been deprecated
*Edit:
Changed: else if(err.code == 'ENOENT')
to: else if(err.code === 'ENOENT')
Linter complains about the double equals not being the triple equals.
Using fs.stat:
fs.stat('foo.txt', function(err, stat) {
if(err == null) {
console.log('File exists');
} else if(err.code === 'ENOENT') {
// file does not exist
fs.writeFile('log.txt', 'Some log\n');
} else {
console.log('Some other error: ', err.code);
}
});