Node.js读写文件之批量替换图片的实现方法


Posted in Javascript onSeptember 07, 2016

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

手工的做法如下:

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

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

Node.js读写文件之批量替换图片的实现方法

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

var fs=require('fs'), 
  cp=require('child_process');
var url='Moriarty.jpg'
var rs=fs.readFileSync(url,{encoding:'hex',flag:'r'})
var write=(e)=>{ 
 fs.writeFileSync(e,rs,{encoding:'hex',flag:'w'})  
 }
var buf_files=cp.execSync('ls 160906/*.jpg')
var arr_files=buf_files.toString().trim().split(/\s+/)
arr_files.forEach(write)

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

var glob=require('glob'),
 fs=require('fs')
var url='Moriarty.jpg'
var rs=fs.readFileSync(url,{encoding:'hex',flag:'r'})
var write=(e)=>{ 
 fs.writeFileSync(e,rs,{encoding:'hex',flag:'w'})  
 }
glob('160906/*.jpg',(err,files)=>{
  files.forEach(write)
 })

效果如下图:

 文件原图片:

 Node.js读写文件之批量替换图片的实现方法

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

Node.js读写文件之批量替换图片的实现方法

以上这篇Node.js读写文件之批量替换图片的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于Jquery的动态创建DOM元素的代码
Dec 28 Javascript
解析使用JS 清空File控件的路径值
Jul 08 Javascript
js中arguments的用法(实例讲解)
Nov 30 Javascript
使用JavaScript 编写简单计算器
Nov 24 Javascript
javascript 使用for循环时该注意的问题-附问题总结
Aug 19 Javascript
js实现(全选)多选按钮的方法【附实例】
Mar 30 Javascript
JavaScript中ES6字符串扩展方法
Aug 26 Javascript
jQuery中animate()的使用方法及解决$(”body“).animate({“scrollTop”:top})不被Firefox支持的问题
Apr 04 jQuery
AngularJS发送异步Get/Post请求方法
Aug 13 Javascript
详解Vue实战指南之依赖注入(provide/inject)
Nov 13 Javascript
微信小程序实现的canvas合成图片功能示例
May 03 Javascript
Vue项目中Api的组织和返回数据处理的操作
Nov 04 Javascript
jQuery实现底部浮动窗口效果
Sep 07 #Javascript
聊一聊Vue.js过渡效果
Sep 07 #Javascript
BootStrap中的表单大全
Sep 07 #Javascript
JS实现title标题栏文字不间断滚动显示效果
Sep 07 #Javascript
JavaScript 函数模式详解及示例
Sep 07 #Javascript
jquery 属性选择器(匹配具有指定属性的元素)
Sep 06 #Javascript
jquery validate表单验证插件
Sep 06 #Javascript
You might like
PHP中如何定义和使用常量
2013/02/28 PHP
PHP eval函数使用介绍
2013/12/08 PHP
用javascript实现的支持lrc歌词的播放器
2007/05/17 Javascript
js电信网通双线自动选择技巧
2008/11/18 Javascript
ExtJS 入门
2010/10/29 Javascript
jQuery创建DOM元素实例解析
2015/01/19 Javascript
JavaScript去除数组里重复值的方法
2015/07/13 Javascript
jQuery+CSS3折叠卡片式下拉列表框实现效果
2015/11/02 Javascript
jquery可定制的在线UEditor编辑器
2015/11/17 Javascript
谈谈jQuery Ajax用法详解
2015/11/27 Javascript
javascript实现仿百度图片的瀑布流加载效果
2016/04/20 Javascript
JS+HTML5手机开发之滚动和惯性缓动实现方法分析
2016/06/12 Javascript
jQuery通过ajax方法获取json数据不执行success的原因及解决方法
2016/10/15 Javascript
原生JS简单实现ajax的方法示例
2016/11/29 Javascript
原生js实现密码输入框值的显示隐藏
2017/07/17 Javascript
jQuery 实时保存页面动态添加的数据的示例
2017/08/14 jQuery
详解Vue中数组和对象更改后视图不刷新的问题
2018/09/21 Javascript
Electron-vue开发的客户端支付收款工具的实现
2019/05/24 Javascript
[01:32]DOTA2上海特锦赛现场采访:最想COS的英雄
2016/03/25 DOTA
python中的字典使用分享
2016/07/31 Python
我就是这样学习Python中的列表
2019/06/02 Python
从训练好的tensorflow模型中打印训练变量实例
2020/01/20 Python
python全栈开发语法总结
2020/11/22 Python
如何使用python-opencv批量生成带噪点噪线的数字验证码
2020/12/21 Python
如何开启linux的ssh服务
2015/02/14 面试题
应征英语教师求职信
2013/11/27 职场文书
《孔子游春》教学反思
2014/02/25 职场文书
教师一岗双责责任书
2014/04/16 职场文书
法院先进个人事迹材料
2014/05/04 职场文书
反腐倡廉标语
2014/06/24 职场文书
2014年乡镇纪委工作总结
2014/12/19 职场文书
2015年体检中心工作总结
2015/05/27 职场文书
永不妥协观后感
2015/06/10 职场文书
西安事变观后感
2015/06/12 职场文书
比较node.js和Deno
2021/04/27 Javascript
python画条形图的具体代码
2022/04/20 Python