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 sublime text 3安装与配置
Jun 19 NodeJs
nodejs教程之入门
Nov 21 NodeJs
浅谈NodeJS中require路径问题
May 07 NodeJs
iPhone手机上搭建nodejs服务器步骤方法
Jul 06 NodeJs
详解nodejs 文本操作模块-fs模块(一)
Dec 22 NodeJs
Nodejs+Socket.io实现通讯实例代码
Feb 13 NodeJs
深入理解Nodejs Global 模块
Jun 03 NodeJs
NodeJS使用七牛云存储上传文件的方法
Jul 24 NodeJs
nodejs socket服务端和客户端简单通信功能
Sep 14 NodeJs
nodejs项目windows下开机自启动的方法
Nov 22 NodeJs
nodejs 生成和导出 word的实例代码
Jul 31 NodeJs
nodejs脚本centos开机启动实操方法
Mar 04 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
Ha0k 0.3 PHP 网页木马修改版
2009/10/11 PHP
PHP Streams(流)详细介绍及使用
2015/05/12 PHP
php车辆违章查询数据示例
2016/10/14 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
2018/06/13 PHP
jquery插件制作简单示例说明
2012/02/03 Javascript
jquery对dom的操作常用方法整理
2013/06/25 Javascript
JQuery给网页更换皮肤的方法
2015/05/30 Javascript
jquery.validate[.unobtrusive]和Bootstrap实现tooltip错误提示问题分析
2016/10/30 Javascript
Canvas实现动态的雪花效果
2017/02/13 Javascript
详解探索 vuex 2.0 以及使用 vuejs 2.0 + vuex 2.0 构建记事本应用
2017/06/16 Javascript
js与jQuery实现的用户注册协议倒计时功能实例【三种方法】
2017/11/09 jQuery
vue中Npm run build 根据环境传递参数方法来打包不同域名
2018/03/29 Javascript
vue中子组件向父组件传递数据的实例代码(实现加减功能)
2018/04/20 Javascript
详解jQuery获取特殊属性的值以及设置内容
2018/11/14 jQuery
jQuery基于随机数解决中午吃什么去哪吃问题示例
2018/12/29 jQuery
详解vuex中action何时完成以及如何正确调用dispatch的思考
2019/01/21 Javascript
vue 集成 vis-network 实现网络拓扑图的方法
2019/08/07 Javascript
js new Date()实例测试
2019/10/31 Javascript
Python实现截屏的函数
2015/07/25 Python
python 队列详解及实例代码
2016/10/18 Python
python使用xpath中遇到:到底是什么?
2018/01/04 Python
PyQt5每天必学之像素图控件QPixmap
2018/04/19 Python
python版本单链表实现代码
2018/09/28 Python
浅谈python的elementtree模块处理中文注意事项
2020/03/06 Python
Selenium自动化测试工具使用方法汇总
2020/06/12 Python
python 代码运行时间获取方式详解
2020/09/18 Python
Pycharm安装python库的方法
2020/11/24 Python
英国皇家邮政海外旗舰店:Royal Mail
2018/02/21 全球购物
斯巴达比赛商店:Spartan Race
2019/01/08 全球购物
Tenstickers法国:墙贴和装饰贴纸
2019/08/26 全球购物
大学本科毕业生求职信范文
2013/12/18 职场文书
公司请假条范文
2014/04/11 职场文书
工地安全质量标语
2014/06/07 职场文书
好的促销活动方案
2014/08/21 职场文书
2016形势与政策学习心得体会
2016/01/12 职场文书
廉洁自律承诺书2016
2016/03/25 职场文书