当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Node.js fs.readdirSync()用法及代码示例


fs.readdirSync()方法用于同步读取给定目录的内容。该方法返回一个数组,其中包含目录中的所有文件名或对象。 options参数可用于更改从方法返回文件的格式。

用法:

fs.readdirSync( path, options )

参数:该方法接受上述和以下所述的两个参数:



  • path:它保存必须从中读取内容的目录路径。它可以是字符串,缓冲区或URL。
  • options:它是一个对象,可用于指定将影响方法的可选参数。它具有两个可选参数:
    • encoding:它是一个字符串值,该字符串值指定给回调参数指定的文件名使用哪种编码。默认值为“ utf8”。
    • withFileTypes:这是一个布尔值,它指定是否将文件作为fs.Dirent对象返回。默认值为“ false”。

返回值:它返回包含目录中文件的String,Buffer或fs.Dirent对象的数组。

以下示例说明了Node.js中的fs.readdirSync()方法:

范例1:本示例使用fs.readdirSync()方法返回目录中的文件名或文件对象。

// Node.js program to demonstrate the 
// fs.readdirSync() method 
  
// Import the filesystem module 
const fs = require('fs'); 
  
// Function to get current filenames 
// in directory 
filenames = fs.readdirSync(__dirname); 
  
console.log("\nCurrent directory filenames:"); 
filenames.forEach(file => { 
  console.log(file); 
}); 
  
// Function to get current filenames 
// in directory with "withFileTypes" 
// set to "true"  
  
fileObjs = fs.readdirSync(__dirname, { withFileTypes:true }); 
  
console.log("\nCurrent directory files:"); 
fileObjs.forEach(file => { 
  console.log(file); 
});

输出:

Current directory filenames:
CONTRUBUTIONS.txt
index.html
index.js
package.json
README.md

Current directory files:
Dirent { name:'CONTRUBUTIONS.txt', [Symbol(type)]:1 }
Dirent { name:'index.html', [Symbol(type)]:1 }
Dirent { name:'index.js', [Symbol(type)]:1 }
Dirent { name:'package.json', [Symbol(type)]:1 }
Dirent { name:'README.md', [Symbol(type)]:1 }

范例2:本示例使用fs.readdirSync()方法仅返回扩展名为“.md”的文件名。

// Node.js program to demonstrate the 
// fs.readdirSync() method 
  
// Import the filesystem module 
const fs = require('fs'); 
const path = require('path'); 
  
// Function to get current filenames 
// in directory with specific extension 
files = fs.readdirSync(__dirname); 
  
console.log("\Filenames with the .md extension:"); 
files.forEach(file => { 
  if (path.extname(file) == ".md") 
    console.log(file); 
})

输出:

Filenames with the .md extension:
README.md

参考: https://nodejs.org/api/fs.html#fs_fs_readdirsync_path_options




相关用法


注:本文由纯净天空筛选整理自sayantanm19大神的英文原创作品 Node.js | fs.readdirSync() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。