Node.js讀寫文件之批量替換圖片的實(shí)現(xiàn)方法
問題:文件夾A中有大量圖片文件,需要用另外一個圖片替換掉A中圖片,但是命名保持不變。
手工的做法如下:
1)瀏覽器打開圖片->2)另存為->3)目標(biāo)文件夾->4)找到一個圖片->5)替換->6)確定
然后,重復(fù)步驟2)和之后的步驟。不小心會漏掉或重復(fù)。

這么麻煩,使用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讀寫文件之批量替換圖片的實(shí)現(xiàn)方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Node.js EventEmmitter事件監(jiān)聽器用法實(shí)例分析
這篇文章主要介紹了Node.js EventEmmitter事件監(jiān)聽器用法,結(jié)合實(shí)例形式分析了EventEmmitter事件監(jiān)聽器相關(guān)函數(shù)與使用技巧,需要的朋友可以參考下2019-01-01
node.js中的events.emitter.removeAllListeners方法使用說明
這篇文章主要介紹了node.js中的events.emitter.removeAllListeners方法使用說明,本文介紹了events.emitter.removeAllListeners 的方法說明、語法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下2014-12-12
nodejs 中模擬實(shí)現(xiàn) emmiter 自定義事件
這篇文章主要介紹了Nodejs中自定義事件實(shí)例,比較簡單的一個例子,需要的朋友可以參考下。2016-02-02
Node.js connect ECONNREFUSED錯誤解決辦法
這篇文章主要介紹了Node.js connect ECONNREFUSED錯誤解決辦法的相關(guān)資料,需要的朋友可以參考下2016-09-09
nodejs基礎(chǔ)之buffer緩沖區(qū)用法分析
這篇文章主要介紹了nodejs基礎(chǔ)之buffer緩沖區(qū)用法,結(jié)合實(shí)例形式分析了buffer緩沖區(qū)的概念、功能、創(chuàng)建、讀寫等相關(guān)操作技巧,需要的朋友可以參考下2018-12-12
詳解NodeJS框架express的路徑映射(路由)功能及控制
這篇文章主要介紹了詳解NodeJS框架express的路徑映射(路由)功能及控制,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-03-03

