Node.js 如何获取文件信息

Node.js 如何获取文件信息

Node.js是一个建立在Chrome V8 JavaScript引擎上的开源跨平台运行时环境,用于在浏览器之外执行JavaScript代码。需要记住的是Node.js不是一个框架,也不是一种编程语言。在本文中,我们将讨论如何使用Node.js获取文件的信息。

我们将使用Node.js的fs模块来提取文件的信息。fs模块是一个内置模块。我们将使用fs模块的fs.stat()方法来获取与文件相关的所有信息。如果要获取上传文件的信息,则可以使用像multer这样的npm包来处理它们,multer可以处理各种类型的文件。让我们逐步进行。首先,在当前工作目录中创建一个要查看其信息的文件。

步骤1: 创建一个名为”app.js”的文件,并使用npm初始化项目。

npm init

步骤2: 在项目文件夹中创建一个info.txt文件。

项目结构:

Node.js 如何获取文件信息

app.js

//Importing fs module  
const fs = require("fs"); 
  
//stat methods takes path and a callback function as input 
fs.stat("./info.txt", function(err, stats){ 
  
    //Checking for errors 
   if(err){ 
       console.log(err) 
   } 
   else{ 
    //Logging the stats Object 
   console.log(stats) 
   } 
});

运行 app.js 文件,使用以下命令:

node app.js

现在在查看输出之前,让我们讨论一下Stats对象的属性:

  • dev: 包含文件的设备的id。(大整数或数字)
  • mode: 给定文件的文件类型和模式的位字段描述。(大整数或数字)
  • nlink: 文件的硬链接数。(大整数或数字)
  • uid: 文件所有者的用户ID。(大整数或数字)
  • gid: 文件所有者的组ID。(大整数或数字)
  • rdev: 如果是特殊文件,则为文件的设备ID。(大整数或数字)
  • blksize: 文件系统输入/输出的块大小。(大整数或数字)
  • ino: 文件的inode号码。它包含有关文件的基本信息。(大整数或数字)
  • size: 文件的总大小(以字节为单位)。(大整数或数字)
  • blocks: 分配给给定文件的块数。(大整数或数字)
  • atimeMs: 表示文件的最后访问时间的时间戳。(大整数或数字)
  • mtimeMs: 表示文件的最后修改时间的时间戳。(大整数或数字)
  • ctimeMs: 表示文件的最后更改时间的时间戳,即inode被更改的时间。(大整数或数字)
  • birthtimeMs: 表示文件创建时间的时间戳。(大整数或数字)
  • aTime: 表示文件的最后访问时间的Date对象。(日期)
  • mTime: 表示文件的最后修改时间的Date对象。(日期)
  • cTime: 表示文件的最后更改时间的Date对象。(日期)
  • birthtime: 表示文件创建时间的Date对象。(日期)

输出:

Node.js 如何获取文件信息

通过使用nodeJS的文件系统,您可以获取有关本地文件系统中任何文件的所有所需信息。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程