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+ajax实现实用的点赞插件代码
Jul 06 Javascript
jQuery 3.0中存在问题及解决办法
Jul 15 Javascript
轻松实现js选项卡切换效果
Sep 24 Javascript
Angularjs添加排序查询功能的实例代码
Oct 24 Javascript
JavaScript代码执行的先后顺序问题
Oct 29 Javascript
vue中添加mp3音频文件的方法
Mar 02 Javascript
jQuery中将json数据显示到页面表格的方法
May 27 jQuery
利用Node.js如何实现文件循环覆写
Apr 05 Javascript
JS实现的贪吃蛇游戏案例详解
May 01 Javascript
vue v-for直接循环数字实例
Nov 07 Javascript
原生JS实现留言板功能
Feb 08 Javascript
vue项目中使用bpmn为节点添加颜色的方法
Apr 30 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利用递归函数实现无限级分类的方法
2019/03/22 PHP
XP折叠菜单&仿QQ2006菜单
2006/12/16 Javascript
List all the Databases on a SQL Server
2007/06/21 Javascript
用Greasemonkey 脚本收藏网站会员信息到本地
2009/10/26 Javascript
Javascript 类、命名空间、代码组织代码
2011/07/31 Javascript
Jquery 获取checkbox的checked问题
2011/11/16 Javascript
javascript函数以及基础写法100多条实用整理
2013/01/13 Javascript
Jquery为a标签的href赋值实现代码
2013/05/03 Javascript
JQuery中SetTimeOut传参问题探讨
2013/05/10 Javascript
客户端js性能优化小技巧整理
2013/11/05 Javascript
jQuery实现进度条效果代码
2015/12/17 Javascript
JavaScript中自带的 reduce()方法使用示例详解
2016/08/10 Javascript
Vue.js一个文件对应一个组件实践
2016/10/27 Javascript
VUE开发一个图片轮播的组件示例代码
2017/03/06 Javascript
详解vue2.0 使用动态组件实现 Tab 标签页切换效果(vue-cli)
2017/08/30 Javascript
Nuxt.js实战详解
2018/01/18 Javascript
JavaScript监听键盘事件代码实现
2020/06/03 Javascript
解决vue scoped html样式无效的问题
2020/10/24 Javascript
Python实现的Kmeans++算法实例
2014/04/26 Python
python使用点操作符访问字典(dict)数据的方法
2015/03/16 Python
Python出现segfault错误解决方法
2016/04/16 Python
浅谈pycharm下找不到sqlalchemy的问题
2018/12/03 Python
python面向对象实现名片管理系统文件版
2019/04/26 Python
Python获取当前脚本文件夹(Script)的绝对路径方法代码
2019/08/27 Python
Python项目跨域问题解决方案
2020/06/22 Python
python Zmail模块简介与使用示例
2020/12/19 Python
野兽派官方旗舰店:THE BEAST 野兽派
2016/08/05 全球购物
加州风格的游泳和沙滩装品牌:Cupshe
2019/06/10 全球购物
对祖国的寄语大全
2014/04/11 职场文书
学生会宣传部部长竞选演讲稿
2014/04/25 职场文书
公司离职证明标准样本
2014/10/05 职场文书
初中生考试作弊检讨书
2014/12/14 职场文书
2015年父亲节活动总结
2015/02/12 职场文书
详细了解java监听器和过滤器
2021/07/09 Java/Android
vue 实现弹窗关闭后刷新效果
2022/04/08 Vue.js
vue/cli 配置动态代理无需重启服务的方法
2022/05/20 Vue.js