问题:文件夹A中有大量图片文件,需要用另外一个图片替换掉A中图片,但是命名保持不变。
手工的做法如下:
1)浏览器打开图片->2)另存为->3)目标文件夹->4)找到一个图片->5)替换->6)确定
然后,重复步骤2)和之后的步骤。不小心会漏掉或重复。
这么麻烦,使用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基于fs模块对系统文件及目录进行读写操作的方法详解
- node.js 利用流实现读写同步,边读边写的方法
- Node.js 使用流实现读写同步边读边写功能
- 基于node.js的fs核心模块读写文件操作(实例讲解)
- Node.js Sequelize如何实现数据库的读写分离
- Node.js的文件权限及读写flag详解
- Node.js Streams文件读写操作详解
- 在Node.js应用中读写Redis数据库的简单方法
- 详解Node.js读写中文内容文件操作