发布时间:2026-09-28 18:02:35 浏览次数:2
当我们在 Node.js 中需要读取、写入或者操作文件时,需要使用 fs 模块。在 fs 模块中,fs.stat() 方法可以用于获取文件的状态,例如文件大小、创建时间、修改时间等信息。本文将详细讲解如何使用 fs.stat() 方法。
fs.stat() 方法用于获取文件的状态信息,如文件大小、创建时间、修改时间等。它的语法如下:
fs.stat(path[, options], callback)其中,
回调函数包含两个参数,分别是 err 和 stats,err 表示操作是否成功,stats 表示获取到的文件状态信息。
以下是一个简单的示例,使用 fs.stat() 方法获取文件的状态信息:
const fs = require('fs');fs.stat('./file.txt', function(err, stats) { if (err) throw err; console.log(`File size: ${stats.size} bytes`); console.log(`Created at: ${stats.birthtime}`); console.log(`Last modified at: ${stats.mtime}`);});首先引入 fs 模块,并指定文件的路径为 file.txt。然后通过 fs.stat() 方法获取文件状态信息,并在回调函数中打印出文件大小、创建时间和修改时间。
下面是一个 Promise 封装的示例,使用 Promise 将 fs.stat() 方法封装。
const fs = require('fs');function stat(path) { return new Promise((resolve, reject) => { fs.stat(path, (err, stats) => { if (err) return reject(err); resolve(stats); }); });}stat('./file.txt') .then(stats => { console.log(`File size: ${stats.size} bytes`); console.log(`Created at: ${stats.birthtime}`); console.log(`Last modified at: ${stats.mtime}`); }) .catch(console.error);这个示例中,我们定义了一个 stat() 函数来封装 fs.stat() 方法,使用 Promise 来实现异步操作。在使用时,首先调用 stat() 方法,返回一个 Promise 对象,然后在 Promise 的 then() 方法中获取文件状态信息。
本文详细讲解了如何使用 fs.stat() 方法获取文件状态信息,包括常规使用方法和使用 Promise 封装的方法,并介绍了相关参数和回调函数的含义。在实际开发中,我们可以根据具体需求来使用 fs.stat() 方法获取文件的状态信息。