gpt4 book ai didi

javascript - fs.readdirSync,如何获取路径中的子文件夹?

转载 作者:行者123 更新时间:2023-12-03 08:43:09 25 4
gpt4 key购买 nike

如何获取子文件夹?

路径 dist/docs/:

  • 2006/艺术1
  • 2006/艺术2
  • 2008/艺术1
  • 离线
  • 测试
const distPath = 'dist/docs/';

function getDirectories(distPath) {
return fs.readdirSync(distPath).filter(function (file) {
return fs.statSync(distPath + '/' + file).isDirectory();
}).filter(function (distPath) {
return distPath != 'test' && distPath != 'offline';
});
}

let articlePath = getDirectories(distPath);

意外

'2006', '2006', '2008'

预期

'2006/Art1', '2006/Art2', '2008/Art1'

最佳答案

fs.readdirSync 仅读取一个目录的内容;如果您发现某个条目是子目录,并且需要读取给定子目录的内容,则还需要对该子目录调用 fs.readdirSync

看来你需要一些递归的东西。

function deepGetDirectories(distPath) {
return fs.readdirSync(distPath).filter(function (file) {
return fs.statSync(distPath + '/' + file).isDirectory();
}).reduce(function(all, subDir) {
return [...all, ...fs.readdirSync(distPath + '/' + subDir).map(e => subDir + '/' + e)]
}, []);
}

关于javascript - fs.readdirSync,如何获取路径中的子文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62246363/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com