码迷,mamicode.com
首页 > Web开发 > 详细

Node.js读写文件之批量替换图片

时间:2016-09-06 22:55:37      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:

   问题:文件夹A中有大量图片文件,需要用另外一个图片替换掉A中图片,但是命名保持不变。

   手工的做法如下:

   1)浏览器打开图片->2)另存为->3)目标文件夹->4)找到一个图片->5)替换->6)确定 

    然后,重复步骤2)和之后的步骤。不小心会漏掉或重复。

技术分享

 这么麻烦,使用node.js来处理改如何呢?代码如下: 

 1 var fs=require(‘fs‘),    
 2      cp=require(‘child_process‘);
 3 var url=‘Moriarty.jpg‘
 4 var rs=fs.readFileSync(url,{encoding:‘hex‘,flag:‘r‘})
 5 var write=(e)=>{  
 6     fs.writeFileSync(e,rs,{encoding:‘hex‘,flag:‘w‘})      
 7   }
 8 var  buf_files=cp.execSync(‘ls 160906/*.jpg‘)
 9      arr_files=buf_files.toString().split(/\s+/).slice(0,files.length-1)
10 arr_files.forEach(write)

也可以用glob和fs模块来完成:代码如下: 

 1 var glob=require(‘glob‘),
 2     fs=require(‘fs‘)
 3 var url=‘Moriarty.jpg‘
 4 var rs=fs.readFileSync(url,{encoding:‘hex‘,flag:‘r‘})
 5 var write=(e)=>{  
 6     fs.writeFileSync(e,rs,{encoding:‘hex‘,flag:‘w‘})      
 7   }
 8 glob(‘160906/*.jpg‘,(err,files)=>{
 9      files.forEach(write)
10    })

效果如下图:

 文件原图片:

 技术分享

文件新图片:(图片文件名未变)

技术分享

  声明:以上内容仅供学习交流。

Node.js读写文件之批量替换图片

标签:

原文地址:http://www.cnblogs.com/sharks007/p/5847446.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!