fs.stat(path[, options], callback)
历史
| 版本 | 变化 | 
|---|---|
| v18.0.0 | 将无效回调传递给   | 
| v10.5.0 | 接受一个额外的   | 
| v10.0.0 | 
  | 
| v7.6.0 | 
  | 
| v7.0.0 | 
  | 
| v0.0.2 | 添加于:v0.0.2  | 
参数
path<string> | <Buffer> | <URL>options<Object>bigint<boolean> 返回的 <fs.Stats> 对象中的数值是否应为bigint。 默认:false。
callback<Function>err<Error>stats<fs.Stats>
异步   。回调有两个参数 stat(2) (err, stats) 其中 stats 是一个  <fs.Stats>  对象。
如果出现错误,err.code 将是 Common System Errors 之一。
不建议在调用 fs.open() 、 fs.readFile() 或 fs.writeFile() 之前使用 fs.stat() 检查文件是否存在。相反,用户代码应该直接打开/读取/写入文件并处理文件不可用时引发的错误。
要检查文件是否存在而不随后对其进行操作,建议使用 。fs.access() 
例如,给定以下目录结构:
- txtDir
-- file.txt
- app.js
下一个程序将检查给定路径的统计信息:
import { stat } from 'node:fs';
const pathsToCheck = ['./txtDir', './txtDir/file.txt'];
for (let i = 0; i < pathsToCheck.length; i++) {
  stat(pathsToCheck[i], (err, stats) => {
    console.log(stats.isDirectory());
    console.log(stats);
  });
}
结果输出将类似于:
true
Stats {
  dev: 16777220,
  mode: 16877,
  nlink: 3,
  uid: 501,
  gid: 20,
  rdev: 0,
  blksize: 4096,
  ino: 14214262,
  size: 96,
  blocks: 0,
  atimeMs: 1561174653071.963,
  mtimeMs: 1561174614583.3518,
  ctimeMs: 1561174626623.5366,
  birthtimeMs: 1561174126937.2893,
  atime: 2019-06-22T03:37:33.072Z,
  mtime: 2019-06-22T03:36:54.583Z,
  ctime: 2019-06-22T03:37:06.624Z,
  birthtime: 2019-06-22T03:28:46.937Z
}
false
Stats {
  dev: 16777220,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 20,
  rdev: 0,
  blksize: 4096,
  ino: 14214074,
  size: 8,
  blocks: 8,
  atimeMs: 1561174616618.8555,
  mtimeMs: 1561174614584,
  ctimeMs: 1561174614583.8145,
  birthtimeMs: 1561174007710.7478,
  atime: 2019-06-22T03:36:56.619Z,
  mtime: 2019-06-22T03:36:54.584Z,
  ctime: 2019-06-22T03:36:54.584Z,
  birthtime: 2019-06-22T03:26:47.711Z
}
相关用法
- Node.js fs.stat()用法及代码示例
 - Node.js fs.statSync()用法及代码示例
 - Node.js fs.symlink(target, path[, type], callback)用法及代码示例
 - Node.js fs.symlink()用法及代码示例
 - Node.js fs.symlinkSync()用法及代码示例
 - Node.js fs.filehandle.datasync()用法及代码示例
 - Node.js fs.chmod()用法及代码示例
 - Node.js fs.read()用法及代码示例
 - Node.js fs.Dirent.isFile()用法及代码示例
 - Node.js fs.Dir.closeSync()用法及代码示例
 - Node.js fs.fchmodSync()用法及代码示例
 - Node.js fs.constants用法及代码示例
 - Node.js fs.mkdir()用法及代码示例
 - Node.js fs.mkdirSync()用法及代码示例
 - Node.js fs.fdatasync()用法及代码示例
 - Node.js fs.Dirent.isFIFO()用法及代码示例
 - Node.js fs.copyFile()用法及代码示例
 - Node.js fs.writeSync()用法及代码示例
 - Node.js fs.truncate()用法及代码示例
 - Node.js fs.openSync()用法及代码示例
 - Node.js fs.filehandle.write()用法及代码示例
 - Node.js fs.fdatasyncSync()用法及代码示例
 - Node.js fs.filehandle.sync()用法及代码示例
 - Node.js fs.fsyncSync()用法及代码示例
 - Node.js fs.Dirent.isDirectory()用法及代码示例
 
注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 fs.stat(path[, options], callback)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
