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)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
