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

這么麻煩,使用node.js來(lái)處理改如何呢?代碼如下:
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模塊來(lái)完成:代碼如下:
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讀寫(xiě)文件之批量替換圖片的實(shí)現(xiàn)方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
nodeJs編寫(xiě)錯(cuò)誤處理中間件問(wèn)題
這篇文章主要介紹了nodeJs編寫(xiě)錯(cuò)誤處理中間件問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12
Node.js EventEmmitter事件監(jiān)聽(tīng)器用法實(shí)例分析
這篇文章主要介紹了Node.js EventEmmitter事件監(jiān)聽(tīng)器用法,結(jié)合實(shí)例形式分析了EventEmmitter事件監(jiān)聽(tīng)器相關(guān)函數(shù)與使用技巧,需要的朋友可以參考下2019-01-01
node.js中的events.emitter.removeAllListeners方法使用說(shuō)明
這篇文章主要介紹了node.js中的events.emitter.removeAllListeners方法使用說(shuō)明,本文介紹了events.emitter.removeAllListeners 的方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下2014-12-12
nodejs 中模擬實(shí)現(xiàn) emmiter 自定義事件
這篇文章主要介紹了Nodejs中自定義事件實(shí)例,比較簡(jiǎn)單的一個(gè)例子,需要的朋友可以參考下。2016-02-02
Node.js connect ECONNREFUSED錯(cuò)誤解決辦法
這篇文章主要介紹了Node.js connect ECONNREFUSED錯(cuò)誤解決辦法的相關(guān)資料,需要的朋友可以參考下2016-09-09
nodejs基礎(chǔ)之buffer緩沖區(qū)用法分析
這篇文章主要介紹了nodejs基礎(chǔ)之buffer緩沖區(qū)用法,結(jié)合實(shí)例形式分析了buffer緩沖區(qū)的概念、功能、創(chuàng)建、讀寫(xiě)等相關(guān)操作技巧,需要的朋友可以參考下2018-12-12
一文講解如何把已安裝的nodejs高版本降級(jí)為低版本
部分老舊項(xiàng)目需要使用低版本的node,網(wǎng)上很多是無(wú)效的,高版本無(wú)法直接安裝低版本node,但是低版本nodejs可以安裝部分高版本node,從而達(dá)到升級(jí)效果,下面這篇文章主要給大家介紹了關(guān)于如何把已安裝的nodejs高版本降級(jí)為低版本的相關(guān)資料,需要的朋友可以參考下2024-06-06
詳解NodeJS框架express的路徑映射(路由)功能及控制
這篇文章主要介紹了詳解NodeJS框架express的路徑映射(路由)功能及控制,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-03-03

