一、fs 获取文件信息
语法:fs.stat(path, callback)
参数:
- path:文件路径
- callback:回调函数,带有两个参数如:(err, stats), stats 是 fs.Stats 对象。
一般回调函数的第一个参数是错误对象,如果 err 为 null,则表示没有错误。
fs.stat (path) 执行后,会将 stats 类的实例返回给其回调函数。可以通过 stats 类中的提供方法判断文件的相关属性。
例如判断是否为文件:
var fs = require('fs');
fs.stat('/Users/liuht/code/itbilu/demo/fs.js', function (err, stats) {
console.log(stats.isFile()); //true
})
方法 | 描述 |
---|---|
stats.isFile() | 如果是文件返回 true,否则返回 false。 |
stats.isDirectory() | 如果是目录返回 true,否则返回 false。 |
stats.isBlockDevice() | 如果是块设备返回 true,否则返回 false。 |
stats.isCharacterDevice() | 如果是字符设备返回 true,否则返回 false。 |
stats.isSymbolicLink() | 如果是软链接返回 true,否则返回 false。 |
stats.isFIFO() | 如果是FIFO,返回true,否则返回 false。FIFO是UNIX中的一种特殊类型的命令管道。 |
stats.isSocket() | 如果是 Socket 返回 true,否则返回 fals |
二、fs 中的其他操作
- 验证路径是否存在
fs.exists(path,callback)
fs.existsSync(path)
- 删除文件
fs.unlink(path, callback)
fs.unlinkSync(path)
- 读取文件
fs.readdir(path[, options], callback)
fs.readdirSync(path[, options])
- 截断文件
fs.ftruncate(path, len, callback)
fs.ftruncateSync(path, len)
- 建立目录
fs.mkdir(path[, mode], callback)
fs.mkdirSync(path[, mode])
- 删除目录
fs.rmdir(path, callback)
fs.rmdirSync(path)
- 重命名文件和目录
fs.rename(oldPath, newPath, callback)
fs.renameSync(oldPath, newPath)
- 监视文件更改写入
fs.watchFile(filename[, options], listener)