nodejs實(shí)現(xiàn)獲取本地文件夾下圖片信息功能示例
本文實(shí)例講述了nodejs實(shí)現(xiàn)獲取本地文件夾下圖片信息功能。分享給大家供大家參考,具體如下:
新建一個(gè)file.js
項(xiàng)目目錄如下

//獲取項(xiàng)目工程里的圖片
var fs = require('fs');//引用文件系統(tǒng)模塊
var image = require("imageinfo"); //引用imageinfo模塊
function readFileList(path, filesList) {
var files = fs.readdirSync(path);
files.forEach(function (itm, index) {
var stat = fs.statSync(path + itm);
if (stat.isDirectory()) {
//遞歸讀取文件
readFileList(path + itm + "/", filesList)
} else {
var obj = {};//定義一個(gè)對(duì)象存放文件的路徑和名字
obj.path = path;//路徑
obj.filename = itm//名字
filesList.push(obj);
}
})
}
var getFiles = {
//獲取文件夾下的所有文件
getFileList: function (path) {
var filesList = [];
readFileList(path, filesList);
return filesList;
},
//獲取文件夾下的所有圖片
getImageFiles: function (path) {
var imageList = [];
this.getFileList(path).forEach((item) => {
var ms = image(fs.readFileSync(item.path + item.filename));
ms.mimeType && (imageList.push(item.filename))
});
return imageList;
}
};
//獲取文件夾下的所有圖片
var srclist=getFiles.getImageFiles("../../static/images/");
var srcNewList=[];
console.log(srclist);
srclist.forEach(function (item, index){
console.log(item);
if(item.split(".")[1]=='jpg'){
srcNewList.push({'imsrc':item})
}else{
srcNewList.push({'videosrc':item})
}
})
console.log(srcNewList)
//獲取文件夾下的所有文件以及路徑
// console.log(getFiles.getFileList("../../static/"));
打印結(jié)果如下:

希望本文所述對(duì)大家node.js程序設(shè)計(jì)有所幫助。
相關(guān)文章
利用pm2部署多個(gè)node.js項(xiàng)目的配置教程
目前似乎最常見的線上部署nodejs項(xiàng)目的有forever,pm2這兩種,而下面這篇文章主要給大家介紹了關(guān)于利用pm2部署多個(gè)node.js項(xiàng)目的配置教程,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。2017-10-10
Node解決簡單重復(fù)問題系列之Excel內(nèi)容的獲取
這篇文章主要給大家介紹了關(guān)于利用Node解決簡單重復(fù)問題系列之Excel內(nèi)容獲取的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧。2018-01-01
node.js事件循環(huán)機(jī)制及與js區(qū)別詳解
這篇文章主要為大家介紹了node.js事件循環(huán)機(jī)制及與js區(qū)別詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09
Node.js實(shí)現(xiàn)前端后端數(shù)據(jù)傳輸加密解密
這篇文章主要介紹了Node.js實(shí)現(xiàn)前端后端數(shù)據(jù)傳輸加密解密,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08
node.js對(duì)于數(shù)據(jù)庫MySQL基本操作實(shí)例總結(jié)【增刪改查】
這篇文章主要介紹了node.js對(duì)于數(shù)據(jù)庫MySQL基本操作,結(jié)合實(shí)例形式總結(jié)分析了node.js針對(duì)mysql數(shù)據(jù)庫基本配置、連接與增刪改查相關(guān)操作技巧,需要的朋友可以參考下2023-04-04
Node.js操作MongoDB數(shù)據(jù)庫實(shí)例分析
這篇文章主要介紹了Node.js操作MongoDB數(shù)據(jù)庫,結(jié)合實(shí)例形式分析了node.js連接MongoDB數(shù)據(jù)庫以及增刪改查等相關(guān)操作技巧,需要的朋友可以參考下2020-01-01
NodeJS 創(chuàng)建目錄和文件的方法實(shí)例分析
這篇文章主要介紹了NodeJS 創(chuàng)建目錄和文件的方法,涉及node.js中fs模塊mkdir、writeFile及目錄判斷existsSync等方法的功能與相關(guān)使用技巧,需要的朋友可以參考下2023-04-04
詳解Node.js?應(yīng)用高?CPU?占用率分析方法
這篇文章主要為大家介紹了Node.js?應(yīng)用高?CPU?占用率分析方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
我的Node.js學(xué)習(xí)之路(二)NPM模塊管理
npm 是 Node.js 的模塊依賴管理工具。作為開發(fā)者使用的工具,主要解決開發(fā) Node.js 時(shí)會(huì)遇到的問題。如同 RubyGems 對(duì)于 Ruby 開發(fā)者和 Maven 對(duì)于 Java 開發(fā)者的重要性,npm 對(duì)與 Node.js 的開發(fā)者和社區(qū)的重要性不言而喻。2014-07-07

