nodejs實現獲取本地文件夾下圖片信息功能示例

 更新時間:2019年06月22日 11:18:45   作者:etemal_bright   我要評論
這篇文章主要介紹了nodejs實現獲取本地文件夾下圖片信息功能,涉及node.js針對文件、目錄的遍歷、讀取等相關操作技巧,需要的朋友可以參考下

本文實例講述了nodejs實現獲取本地文件夾下圖片信息功能。分享給大家供大家參考,具體如下:

新建一個file.js

項目目錄如下

//獲取項目工程里的圖片
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/"));

打印結果如下:

希望本文所述對大家node.js程序設計有所幫助。

相關文章

  • 淺析Node.js實現HTTP文件下載

    淺析Node.js實現HTTP文件下載

    本文介紹如何用Node.js來實現HTTP文件下載,文章以實例演示所以很詳細,有需要的小伙伴們可以參考學習。
    2016-08-08
  • Node.js學習之TCP/IP數據通訊(實例講解)

    Node.js學習之TCP/IP數據通訊(實例講解)

    下面小編就為大家帶來一篇Node.js學習之TCP/IP數據通訊(實例講解)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • 安裝使用Mongoose配合Node.js操作MongoDB的基礎教程

    安裝使用Mongoose配合Node.js操作MongoDB的基礎教程

    這篇文章主要介紹了安裝使用Mongoose來讓Node.js操作MongoDB的基礎教程,前端js+后端node+js操作MongoDB正是所謂最流行的一種JavaScript全棧開發方案,需要的朋友可以參考下
    2016-03-03
  • 詳解axios在node.js中的post使用

    詳解axios在node.js中的post使用

    最近因為工作的原因在學習使用網絡請求庫,因為這個項目用的是Promise,所以就選擇了axios,下面這篇文章主要給大家介紹了關于axios在node.js中的post使用的相關資料,文中介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起學習學習吧。
    2017-04-04
  • 三分鐘教你用Node做一個微信哄女友(基友)神器(面向小白)

    三分鐘教你用Node做一個微信哄女友(基友)神器(面向小白)

    這篇文章主要介紹了三步教你用Node做一個微信哄女友(基友)神器(面向小白),用node和wechaty微信網頁接口開發的一款小工具,可以定時給女朋友發每天的天氣情況,天氣提醒,每日一句。通過配置機器人api后還可以實現微信機器人自動陪女朋友聊天。,需要的朋友可以參考下
    2019-06-06
  • 詳解如何使用node.js的開發框架express創建一個web應用

    詳解如何使用node.js的開發框架express創建一個web應用

    這篇文章主要介紹了詳解如何使用node.js的開發框架express創建一個web應用,網上各種搜索后,整理了下快速搭建express框架的步驟。非常具有實用價值,需要的朋友可以參考下
    2018-12-12
  • node.js中的fs.chmodSync方法使用說明

    node.js中的fs.chmodSync方法使用說明

    這篇文章主要介紹了node.js中的fs.chmodSync方法使用說明,本文介紹了fs.chmodSync方法說明、語法、接收參數、使用實例和實現源碼,需要的朋友可以參考下
    2014-12-12
  • nodejs中各種加密算法的實現詳解

    nodejs中各種加密算法的實現詳解

    這篇文章主要給大家介紹了關于nodejs中各種加密算法的實現方法,文中通過示例代碼介紹的非常詳細,對大家學習或者使用nodejs具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-07-07
  • Nodejs學習筆記之Stream模塊

    Nodejs學習筆記之Stream模塊

    nodejs的fs模塊并沒有提供一個copy的方法,但我們可以很容易的實現一個,這種方式是把文件內容全部讀入內存,然后再寫入文件,對于小型的文本文件,這沒有多大問題,比如grunt-file-copy就是這樣實現的。
    2015-01-01
  • Nodejs實現文件上傳的示例代碼

    Nodejs實現文件上傳的示例代碼

    這篇文章主要介紹了Nodejs文件上傳的示例代碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09

最新評論

湖北11选5走势图爱彩乐