nodejs核心模块fs删除文件_用 NodeJS 重命名系统文件
翻譯:瘋狂的技術(shù)宅
原文:https://coderrocketfuel.com/article/how-to-rename-a-system-file-using-node-js未經(jīng)允許嚴(yán)禁轉(zhuǎn)載
介紹
你是在 Node.js 中操作系統(tǒng)文件,并且需要一種簡單的方法來以編程方式重命名文件?
幸運的是 Node.js 的文件系統(tǒng) (Fs) 核心模塊實現(xiàn)了內(nèi)置的方法,可以通過 fs.renam() 和 fs.renameSync() 方法來給文件一個新名字。
這兩個函數(shù)都會給你相同的結(jié)果,只不過是用了兩種不同的方式去做。同步 fs.renameSync() 版本將阻塞你的代碼并等待文件成功重命名或發(fā)生錯誤然后再繼續(xù)運行。異步版本fs.rename()不會阻塞你的代碼,而是在刪除文件時返回一個回調(diào)函數(shù)。
下面將向你展示如何使用這兩種方法。
要使下面的代碼生效,請確保安裝了Node.js,并把要重命名的文件放在項目目錄的根目錄中。在這個例子中,我們的文件是一個名為 "your-file.png" 的PNG圖像文件。當(dāng)然重命名方法適用于任何文件類型。
First, let's cover the fs.rename() version. We'll give you the full code and then explain all the different parts afterward:
首先介紹 fs.rename() 版本。我們將為你提供完整的代碼,然后進(jìn)行解釋:
fs.rename():
const fs = require("fs") const path = require("path")const pathToFile = path.join(__dirname, "your-file.png") const newPathToFile = path.join(__dirname, "new-filename.png")fs.rename(pathToFile, newPathToFile, function(err) {if (err) {throw err} else {console.log("Successfully renamed the file!")} })讓我們分解代碼的每個部分:
在終端中運行代碼時,你應(yīng)該看到以下輸出:
$ Successfully renamed the file!如果查看文件所在的目錄,你應(yīng)該看到文件被重新命名。
接下來介紹同步版本。
fs.renameSync():
const fs = require("fs") const path = require("path") const pathToFile = path.join(__dirname, "your-file.png") const newPathToFile = path.join(__dirname, "new-filename.png")try {fs.renameSync(pathToFile, newPathToFile)console.log("Successfully renamed the file!") } catch(err) {throw err }與前面的例子類似,我們需要 Fs 和 Path 核心模塊。然后獲取當(dāng)前文件的路徑,并創(chuàng)建一個路徑,其中包含我們想要的新文件名。
但后面我們用了 try...catch 語句。在 try 部分,將 pathToFile 和 newPathToFile 變量傳遞給 fs.renameSync() 函數(shù),并在成功重命名文件時記錄成功消息。用 catch 拋出可能會發(fā)生的任何錯誤。
在終端中運行代碼時,你應(yīng)該看到與以前相同的輸出:
$ Successfully renamed the file!And the file in your directory will have a new name. 并且目錄中的文件將具有新名稱。
結(jié)論
Node.js 的文件系統(tǒng)(Fs)核心模塊還有很多有用的方法。 可以通過查看文檔獲取更多信息。
歡迎關(guān)注前端公眾號:前端先鋒,領(lǐng)取前端工程化實用工具包。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的nodejs核心模块fs删除文件_用 NodeJS 重命名系统文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java遍历数组练习(for循环、for
- 下一篇: java信息管理系统总结_java实现科