如何统计指定目录文件夹指定文件类型的个数以及文件名称,并列出文件名呢?
上图中的文件会动态更新删减,所以人工一个个统计基本不可能。就好像数一碗正在被吃的米饭有多少粒一样,还没统计完已经吃了一口或又加了一勺;只能通过程序读取目录遍历。本文将采用Node实现。
本文将通过nodejs 读取服务端文件 轻松实现
打开生成的JSON文件放到在线json工具
新建目录node
新建node/package.json
{
"name": "nodexlsx",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"node-xlsx": "^0.23.0"
}
}
下面我们一起动手实现上面的读取服务器文件的代码:
新建 node/getpdf.js
const path = require('path')
const fs = require('fs')
let dirName = 'H:/YG-demo/node-read-dir-tojson/pdfdemo/pdfData/BPA0530'
let datas = []
fs.readdir(dirName, function (err, files) {
if (err) {
console.log('err1:' + err)
return
}
if (files && files.length) {
files.forEach((item) => {
fs.readdir(dirName + '/' + item, function (e, f) {
if (e) {
console.log('e1:' + e)
return
}
if (f && f.length) {
let d = []
f.forEach((i) => {
if (/.pdf$/i.test(i)) {
d.push(i)
}
})
datas.push({
dirName: item,
dirFile: d
})
}
})
})
}
})
setTimeout(() => {
fs.writeFile(`yg.json`, JSON.stringify(datas), res => {
console.log('写入成功',datas)
})
}, 3000)
打开终端或CMD
执行 npm install 安装依赖
执行 node getpdf.js 在根目录会生成yg.json
这样就统计出指定服务器目录下 文件名称并一一列出 源码下载
Over结束!