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入门详解(多篇文章结合)
Mar 07 NodeJs
windows系统下简单nodejs安装及环境配置
Jan 08 NodeJs
nodejs的10个性能优化技巧
Jul 15 NodeJs
用NodeJS实现批量查询地理位置的经纬度接口
Aug 16 NodeJs
浅谈Nodejs中的作用域问题
Dec 26 NodeJs
NodeJS测试框架mocha入门教程
Mar 28 NodeJs
NodeJS自定义模块写法(详解)
Jun 27 NodeJs
详解使用PM2管理nodejs进程
Oct 24 NodeJs
NodeJS简单实现WebSocket功能示例
Feb 10 NodeJs
CentOS7中源码编译安装NodeJS的完整步骤
Oct 13 NodeJs
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
Apache2中实现多网站域名绑定的实现方法
2011/06/01 PHP
php socket实现的聊天室代码分享
2014/08/16 PHP
php中get_meta_tags()、CURL与user-agent用法分析
2014/12/16 PHP
PHP把MSSQL数据导入到MYSQL的方法
2014/12/27 PHP
thinkPHP多表查询及分页功能实现方法示例
2017/07/03 PHP
php实现的表单验证类完整示例
2019/08/13 PHP
laravel 判断查询数据库返回值的例子
2019/10/11 PHP
不用MOUSEMOVE也能滑动啊
2007/05/23 Javascript
jQuery获取css z-index在各种浏览器中的返回值
2010/09/15 Javascript
JQuery 自定义CircleAnimation,Animate方法学习笔记
2011/07/10 Javascript
jquery遍历数组与筛选数组的方法
2013/11/05 Javascript
jQuery响应鼠标事件并隐藏与显示input默认值
2014/08/24 Javascript
js格式化输入框内金额、银行卡号
2016/02/01 Javascript
Three.js学习之文字形状及自定义形状
2016/08/01 Javascript
JS 事件绑定、事件监听、事件委托详细介绍
2016/09/28 Javascript
jQuery手风琴的简单制作
2017/05/12 jQuery
js中变量的连续赋值(实例讲解)
2017/07/08 Javascript
JavaScript实现图片本地预览功能【不用上传至服务器】
2017/09/20 Javascript
mpvue项目中使用第三方UI组件库的方法
2018/09/30 Javascript
Python创建日历实例
2014/08/21 Python
简述Python中的面向对象编程的概念
2015/04/27 Python
Python利用IPython提高开发效率
2016/08/10 Python
Python实现求数列和的方法示例
2018/01/12 Python
pandas 使用均值填充缺失值列的小技巧分享
2019/07/04 Python
基于Python实现大文件分割和命名脚本过程解析
2019/09/29 Python
pytorch::Dataloader中的迭代器和生成器应用详解
2020/01/03 Python
Keras使用tensorboard显示训练过程的实例
2020/02/15 Python
Python 面向对象静态方法、类方法、属性方法知识点小结
2020/03/09 Python
PyTorch中torch.tensor与torch.Tensor的区别详解
2020/05/18 Python
Html5踩坑记之mandMobile使用小记
2020/04/02 HTML / CSS
美国知名奢侈美容品牌零售商:Cos Bar
2017/04/21 全球购物
WWE美国职业摔角官方商店:WWE Shop
2018/11/15 全球购物
学校招生宣传广告词
2014/03/19 职场文书
公务员处分决定书
2015/06/25 职场文书
golang slice元素去重操作
2021/04/30 Golang
oracle删除超过N天数据脚本的方法
2022/02/28 Oracle