node.js操作文件方法
# 读取给定目录的内容
# readdirSync
介绍
fs.readdirSync( path, options )
path:目录路径,它可以是字符串,缓冲区或URL。
options:它是一个对象,可用于指定将影响方法的可选参数。它具有两个可选参数:
encoding:它是一个字符串值,该字符串值指定给回调参数指定的文件名使用哪种编码。默认值为“ utf8”。 withFileTypes:这是一个布尔值,它指定是否将文件作为fs.Dirent对象返回。默认值为“ false”。
返回值:它返回包含目录中文件的String,Buffer或fs.Dirent对象的数组。
示例:递归读取文件夹
var fs = require('fs');
var path = require('path');
function readFileList(dir, filesList = []) {
const files = fs.readdirSync(dir);
console.log(files);
files.forEach((item, index) => {
var fullPath = path.join(dir, item);
const stat = fs.statSync(fullPath);
if (stat.isDirectory()) {
readFileList(path.join(dir, item), filesList); //递归读取文件
} else {
filesList.push(fullPath);
}
});
return filesList;
}
var filesList = [];
readFileList(__dirname,filesList);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 检索文件信息
# statSync
介绍
fs.statSync( path )
path:目录路径,它可以是字符串,缓冲区或URL。
返回值:它返回fs.Stats实例
stats.isFile() 是否是文件
stats.isDirectory() 是否是文件夹
const stat = fs.statSync(path);
if (stat.isDirectory()) {
//文件夹操作...
}
1
2
3
4
2
3
4
参考:
node.js中文文档:https://www.nodeapp.cn/ (opens new window)
node.js英文文档:https://nodejs.org/en/ (opens new window)
编辑 (opens new window)
上次更新: 2023/03/08, 02:53:55