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实现黑名单中间件设计
Jun 17 NodeJs
基于NodeJS的前后端分离的思考与实践(三)轻量级的接口配置建模框架
Sep 26 NodeJs
Nodejs实现的一个静态服务器实例
Dec 06 NodeJs
Nodejs Stream 数据流使用手册
Apr 17 NodeJs
详解nodejs 文本操作模块-fs模块(三)
Dec 22 NodeJs
使用nodejs下载风景壁纸
Feb 05 NodeJs
nodejs制作爬虫实现批量下载图片
May 19 NodeJs
mac下的nodejs环境安装的步骤
May 24 NodeJs
NodeJS搭建HTTP服务器的实现步骤
Oct 12 NodeJs
nodejs 使用http进行post或get请求的实例(携带cookie)
Jan 03 NodeJs
nodejs微信开发之接入指南
Mar 17 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
我的论坛源代码(二)
2006/10/09 PHP
PHP文本操作类
2006/11/25 PHP
php封装的数据库函数与用法示例【参考thinkPHP】
2016/11/08 PHP
超强多功能php绿色集成环境详解
2017/01/25 PHP
ThinkPHP中create()方法自动验证表单信息
2017/04/28 PHP
PHP迭代器接口Iterator用法分析
2017/12/28 PHP
js中scrollHeight,scrollWidth,scrollLeft,scrolltop等差别介绍
2012/05/16 Javascript
Javascript和HTML5利用canvas构建Web五子棋游戏实现算法
2013/07/17 Javascript
chrome调试javascript详解
2015/10/21 Javascript
vuejs父子组件通信的问题
2017/01/11 Javascript
angular.js指令中的controller、compile与link函数的不同之处
2017/05/10 Javascript
Vue常见面试题整理【值得收藏】
2018/09/20 Javascript
使用 Node.js 实现图片的动态裁切及算法实例代码详解
2018/09/29 Javascript
vue2.0 路由模式mode="history"的作用
2018/10/18 Javascript
使用rollup打包JS的方法步骤
2018/12/05 Javascript
微信小程序实现简单跑马灯效果
2020/05/26 Javascript
react的滑动图片验证码组件的示例代码
2019/02/27 Javascript
Vue.js组件使用props传递数据的方法
2019/10/19 Javascript
解决vue语法会有延迟加载显现{{xxx}}的问题
2019/11/14 Javascript
微信jssdk踩坑之签名错误invalid signature
2020/05/19 Javascript
浅析Python 中整型对象存储的位置
2016/05/16 Python
利用Python如何生成hash值示例详解
2017/12/20 Python
一篇文章搞懂Python的类与对象名称空间
2018/12/10 Python
python实现图像检索的三种(直方图/OpenCV/哈希法)
2019/08/08 Python
pytorch中的weight-initilzation用法
2020/06/24 Python
一文带你掌握Pyecharts地理数据可视化的方法
2021/02/06 Python
Html5 Canvas 实现一个“刮刮乐”游戏
2019/09/05 HTML / CSS
详解移动端html5页面长按实现高亮全选文本内容的兼容解决方案
2016/12/03 HTML / CSS
澳大利亚天然护肤品、化妆品和健康产品一站式商店:Nourished Life
2018/12/02 全球购物
Madda Fella官网:美国冒险家服装品牌
2020/01/16 全球购物
SQL Server 2000数据库的文件有哪些,分别进行描述
2013/03/30 面试题
大学毕业感言100字
2014/02/03 职场文书
《口技》教学反思
2014/02/21 职场文书
借款担保书范文
2014/05/13 职场文书
卫生保健工作总结2015
2015/05/18 职场文书
搭建zabbix监控以及邮件报警的超级详细教学
2022/07/15 Servers