nodejs实现获取本地文件夹下图片信息功能示例


Posted in NodeJs onJune 22, 2019

本文实例讲述了nodejs实现获取本地文件夹下图片信息功能。分享给大家供大家参考,具体如下:

新建一个file.js

项目目录如下

nodejs实现获取本地文件夹下图片信息功能示例

//获取项目工程里的图片
var fs = require('fs');//引用文件系统模块
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 = {};//定义一个对象存放文件的路径和名字
   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/"));

打印结果如下:

nodejs实现获取本地文件夹下图片信息功能示例

希望本文所述对大家node.js程序设计有所帮助。

NodeJs 相关文章推荐
Nodejs中调用系统命令、Shell脚本和Python脚本的方法和实例
Jan 01 NodeJs
NodeJS学习笔记之(Url,QueryString,Path)模块
Jan 13 NodeJs
windows下安装nodejs及框架express
Aug 07 NodeJs
nodejs实现发出蜂鸣声音(系统报警声)的方法
Jan 18 NodeJs
nodejs实现邮件发送服务实例分享
Mar 29 NodeJs
nodejs和C语言插入mysql数据库乱码问题的解决方法
Apr 14 NodeJs
详解nodejs模板引擎制作
Jun 14 NodeJs
nodejs动态创建二维码的方法
Aug 12 NodeJs
NodeJS读取分析Nginx错误日志的方法
May 14 NodeJs
nodejs对项目下所有空文件夹创建gitkeep的方法
Aug 02 NodeJs
图解NodeJS实现登录注册功能
Sep 16 NodeJs
Sublime Text3 配置 NodeJs 环境的方法
May 20 NodeJs
NodeJs 模仿SIP话机注册的方法
Jun 21 #NodeJs
通过Nodejs搭建网站简单实现注册登录流程
Jun 14 #NodeJs
NodeJs生成sitemap站点地图的方法示例
Jun 11 #NodeJs
nodejs提示:cross-device link not permitted, rename错误的解决方法
Jun 10 #NodeJs
Nodejs异步流程框架async的方法
Jun 07 #NodeJs
nodejs log4js 使用详解
May 31 #NodeJs
如何让Nodejs支持H5 History模式(connect-history-api-fallback源码分析)
May 30 #NodeJs
You might like
php木马攻击防御之道
2008/03/24 PHP
ThinkPHP文件上传实例教程
2014/08/22 PHP
PHP实现视频文件上传完整实例
2014/08/28 PHP
PHP+Mysql实现多关键字与多字段生成SQL语句的函数
2014/11/05 PHP
jquery 模拟雅虎首页的点击对话框效果
2010/04/11 Javascript
js中parseFloat(参数1,参数2)定义和用法及注意事项
2013/01/27 Javascript
iframe里的页面禁止右键事件的方法
2014/06/10 Javascript
bootstrap和jQuery.Gantt的css冲突 如何解决
2016/05/29 Javascript
Vue组件实例间的直接访问实现代码
2017/08/20 Javascript
在vue中使用Autoprefixed的方法
2018/07/27 Javascript
微信小程序云开发实现云数据库读写权限
2019/05/17 Javascript
解决layui弹框失效的问题
2019/09/09 Javascript
对layui中table组件工具栏的使用详解
2019/09/19 Javascript
原生JS与JQ获取元素的区别详解
2020/02/13 Javascript
vue基于better-scroll仿京东分类列表
2020/06/30 Javascript
浅谈vue中$bus的使用和涉及到的问题
2020/07/28 Javascript
addEventListener()和removeEventListener()追加事件和删除追加事件
2020/12/04 Javascript
使用Python获取Linux系统的各种信息
2014/07/10 Python
python通过pil模块获得图片exif信息的方法
2015/03/16 Python
python+matplotlib实现鼠标移动三角形高亮及索引显示
2018/01/15 Python
对python过滤器和lambda函数的用法详解
2019/01/21 Python
详解爬虫被封的问题
2019/04/23 Python
Python实现多态、协议和鸭子类型的代码详解
2019/05/05 Python
django获取from表单multiple-select的value和id的方法
2019/07/19 Python
Pytorch学习之torch用法----比较操作(Comparison Ops)
2020/06/28 Python
英国领先的酒类网上商城:TheDrinkShop
2017/03/16 全球购物
家长对孩子的感言
2014/03/10 职场文书
装修协议书范本
2014/04/21 职场文书
拉拉队口号
2014/06/16 职场文书
影视广告专业求职信
2014/09/02 职场文书
学生违反校规检讨书
2014/10/28 职场文书
2014年人民调解工作总结
2014/12/08 职场文书
网络妈妈观后感
2015/06/08 职场文书
话题作文之呼唤
2019/12/18 职场文书
Python序列化模块JSON与Pickle
2022/06/05 Python
移除Selenium中window.navigator.webdriver值
2022/06/10 Python