什么是fs文件系統(tǒng)模塊
fs模塊是node.js官方提供的、操作文件的模塊。通過fs模塊可以實現(xiàn)對文件的讀取以及寫入操作。【相關(guān)教程推薦:nodejs視頻教程、編程教學(xué)】
(資料圖片僅供參考)
例如:
fs.readFile():用于讀取指定文件的文件內(nèi)容fs.writeFile():用于向指定的文件寫入內(nèi)容引入fs模塊:
const fs = require("fs");
讀取指定文件的內(nèi)容
fs.readFile()語法:fs.readFile(path[,options],callback)
參數(shù):path:必選參數(shù),字符串格式,表示文件的路徑options:可選參數(shù),表示以什么編碼格式來讀取文件callback:必選參數(shù):文件讀取完成之后,通過這個回調(diào)函數(shù)返回讀取的結(jié)果(失敗:失敗信息;成功:讀取的結(jié)果)栗子:
首先我先創(chuàng)建一個名為test.txt
的文檔,并且里面的內(nèi)容是: 12341234
然后我們使用node.js里面的fs模塊來讀取文件:
// 引入fs模塊 const fs = require("fs"); // 讀取文件 fs.readFile("./test.txt","utf-8",function(err,data){ console.log(err);// null console.log(data);// 12341234 })
我們可以看到在讀取文件的時候,后面回調(diào)函數(shù)里面有兩個參數(shù):
第一個參數(shù)代表著讀取失敗的參數(shù),此時我們這里讀取成功,所以結(jié)果為null
第二個參數(shù)代表著讀取成功之后的結(jié)果,這里我們讀取到文件的內(nèi)容,所以輸出的就是文件的內(nèi)容。
我們可以根據(jù)讀取文件回調(diào)函數(shù)的第一個參數(shù)返回的值來判斷文件是否讀取成功:如果返回的null,代表文件讀取成功;否則讀取失敗。
向指定文件寫入內(nèi)容
fs.writeFile()語法:fs.writeFile(file,data[,options],callback);
參數(shù):參數(shù)1:必選參數(shù),字符串格式,表示文件的路徑參數(shù)2:必選參數(shù),表示寫入的內(nèi)容參數(shù)3:可選參數(shù),表示以什么編碼格式寫入內(nèi)容參數(shù)4:必選參數(shù),文件寫入后的回調(diào)函數(shù)栗子:
const fs = require("fs"); fs.writeFile("text.txt", "海綿寶寶", "utf-8", function(err) { console.log(err);// null })
這段代碼執(zhí)行完畢之后,輸出一個null
,那是不是就表示已經(jīng)寫入成功了呢?
是的,在同級文件夾下,我們可以看到生成了一個新的text.txt
文件,打開發(fā)現(xiàn)正式我們剛才寫入的海綿寶寶
。
那么我們要是再執(zhí)行一遍代碼,只是寫入的內(nèi)容發(fā)生改變,那么結(jié)果是什么呢?
fs.writeFile("text.txt", "派大星", "utf-8", function(err) { console.log(err);// null })
這個時候我們再打開text.txt
文件,發(fā)現(xiàn)里面的內(nèi)容變成了派大星
,也就是說使用wirteFile()
會覆蓋掉文件原來的內(nèi)容。
此時,我們同樣可以根據(jù)寫入文件回調(diào)函數(shù)的參數(shù)返回的值來判斷文件是否寫入成功:如果返回的null,代表文件寫入成功;否則寫入失敗。
結(jié)尾
通過node.js
的fs模塊,我們就可以實現(xiàn)對文件的讀取以及寫入了,本文章為我學(xué)習(xí)node.js的學(xué)習(xí)筆記,有不足之處望大佬們指點。
更多node相關(guān)知識,請訪問:nodejs 教程!
以上就是一文聊聊node文件的讀寫操作的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!