【发布时间】:2020-10-27 06:46:02
【问题描述】:
我有以下文件夹文件结构:
Main Folder->Subfolder(500 in number)->Each subfolder having 2 to 4 images(jpeg,jpg,png,pdf)
我想一次通过节点 js 访问所有图像。 (重点-> 生成一个文本文件,该文件为我提供每张图片的 URL。)
我该如何开始?
【问题讨论】:
标签: javascript node.js file
我有以下文件夹文件结构:
Main Folder->Subfolder(500 in number)->Each subfolder having 2 to 4 images(jpeg,jpg,png,pdf)
我想一次通过节点 js 访问所有图像。 (重点-> 生成一个文本文件,该文件为我提供每张图片的 URL。)
我该如何开始?
【问题讨论】:
标签: javascript node.js file
看起来glob npm 包可以帮助你。以下是如何使用它的示例:
文件层次结构:
test
├── one.jpg
└── test-nested
└── two.jpg
你的代码
var glob = require("glob")
var getDirectories = function (src, callback) {
glob(src + '/**/*', callback);
};
getDirectories('test', function (err, res) {
if (err) {
console.log('Error', err);
} else {
console.log(res);
}
});
这将导致数组
[ 'test/one.jpg',
'test/test-nested',
'test/test-nested/jpg.html' ]
您可以进行相应的更改。
【讨论】:
这是一个重复的问题,您可以在这里找到很多答案:
可能是最简单、最短、最干净的一个:
node.js fs.readdir recursive directory search
var fs = require('fs')
var path = process.cwd()
var files = []
var getFiles = function(path, files){
fs.readdirSync(path).forEach(function(file){
var subpath = path + '/' + file;
if(fs.lstatSync(subpath).isDirectory()){
getFiles(subpath, files);
} else {
files.push(path + '/' + file);
}
});
}
【讨论】: