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
相關用法
- Node.js GM drawCircle()用法及代碼示例
- Node.js GM minify()用法及代碼示例
- Node.js GM channel()用法及代碼示例
- Node.js GM drawEllipse()用法及代碼示例
- Node.js GM magnify()用法及代碼示例
- Node.js GM drawPolyline()用法及代碼示例
- Node.js GM drawBezier()用法及代碼示例
- Node.js GM drawLine()用法及代碼示例
- Node.js GM operator()用法及代碼示例
- Node.js GM chop()用法及代碼示例
注:本文由純淨天空篩選整理自sayantanm19大神的英文原創作品 Node.js | fs.readdirSync() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。