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实现批量下载妹纸图
May 28 NodeJs
Nodejs进阶:基于express+multer的文件上传实例
Nov 21 NodeJs
简单好用的nodejs 爬虫框架分享
Mar 26 NodeJs
NodeJS、NPM安装配置步骤(windows版本) 以及环境变量详解
May 13 NodeJs
nodejs批量下载图片的实现方法
May 19 NodeJs
深入学习nodejs中的async模块的使用方法
Jul 12 NodeJs
浅谈nodejs中的类定义和继承的套路
Jul 26 NodeJs
NodeJs form-data格式传输文件的方法
Dec 13 NodeJs
nodejs实现解析xml字符串为对象的方法示例
Mar 14 NodeJs
nodeJS服务器的创建和重新启动的实现方法
May 12 NodeJs
CentOS7中源码编译安装NodeJS的完整步骤
Oct 13 NodeJs
5分钟教你用nodeJS手写一个mock数据服务器的方法
Sep 10 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/12/14 PHP
ioncube_loader_win_5.2.dll的错误解决方法
2015/01/04 PHP
ThinkPHP框架搭建及常见问题(XAMPP安装失败、Apache/MySQL启动失败)
2016/04/15 PHP
php使用PDO下exec()函数查询执行后受影响行数的方法
2017/03/28 PHP
PHP利用百度ai实现文本和图片审核
2019/05/08 PHP
php中try catch捕获异常实例详解
2020/08/06 PHP
Docker 安装 PHP并与Nginx的部署实例讲解
2021/02/27 PHP
slice函数的用法 之不错的应用
2006/12/29 Javascript
JavaScript OOP类与继承
2009/11/15 Javascript
Javascript 入门基础学习
2010/03/10 Javascript
前台js对象在后台转化java对象的问题探讨
2013/12/20 Javascript
深入探寻javascript定时器
2015/01/02 Javascript
基于javascript实现文字无缝滚动效果
2016/03/22 Javascript
js获取元素下的第一级子元素的方法(推荐)
2017/03/05 Javascript
nodejs爬虫初试superagent和cheerio
2018/03/05 NodeJs
解决iView中时间控件选择的时间总是少一天的问题
2018/03/15 Javascript
vuex提交state&&实时监听state数据的改变方法
2018/09/16 Javascript
vue-cli3 从搭建到优化的详细步骤
2019/01/20 Javascript
js根据后缀判断文件文件类型的代码
2020/05/09 Javascript
使用Vue Composition API写出清晰、可扩展的表单实现
2020/06/10 Javascript
深入了解JS之作用域和闭包
2020/06/16 Javascript
[01:13]2015国际邀请赛线下观战现场
2015/08/08 DOTA
python 字符串split的用法分享
2013/03/23 Python
在Apache服务器上同时运行多个Django程序的方法
2015/07/22 Python
Python 反转字符串(reverse)的方法小结
2018/02/20 Python
Selenium元素的常用操作方法分析
2018/08/10 Python
Python Tornado批量上传图片并显示功能
2020/03/26 Python
Python 列表推导式需要注意的地方
2020/10/23 Python
Python从文件中读取数据的方法步骤
2020/11/18 Python
css3学习系列之移动属性详解
2017/07/04 HTML / CSS
HTML5 Web Workers之网站也能多线程的实现
2013/04/24 HTML / CSS
俄罗斯第一家多品牌在线奢侈品精品店:Aizel.ru
2020/09/06 全球购物
学雷锋活动倡议书
2014/08/30 职场文书
2014年护士工作总结范文
2014/11/11 职场文书
入党积极分子半年考察意见
2015/06/02 职场文书
详解Flutter和Dart取消Future的三种方法
2022/04/07 Java/Android