在node中,fs是內建模組,是指檔案系統模組,用於讀寫檔案;fs模組提供了用於滿足使用者對檔案操作需求的方法和屬性,包括檔案目錄的建立、刪除、查詢以及檔案內容的讀取和寫入等,並且同時提供了非同步和同步的方法。
本教學操作環境:windows10系統、nodejs 12.19.0版本、Dell G3電腦。
Node.js內建的fs模組就是檔案系統模組,負責讀寫檔案。
和所有其它JavaScript模組不同的是,fs模組同時提供了非同步和同步的方法。
fs模組是由Node.js官方提供的、用來操作檔案的模組。它提供了一些列的方法和屬性,用來滿足使用者對檔案操作的需求,包括檔案目錄的建立、刪除、查詢以及檔案內容的讀取和寫入等。
fs的基本操作
1.檔案內容的讀取
同步方法readFileSync()
readFileSync()可傳入兩個參數,第一個參數為要讀取檔案的路徑;第二個參數為options,預設值為null,其中有encoding(編碼,預設為null)和flag(標識位,預設為r),也可直接傳入encoding。
傳回值為檔案的內容,如果沒有 encoding,傳回的檔案內容為 Buffer,如果有依照傳入的編碼解析。
//使用前需导入模块 const fs = require('fs') let data = fs.readFileSync("./1.txt", "utf8"); console.log(data);
非同步方法readFile()
readFile()可傳入三個參數,前兩個參數與readFileSync()一致,第三個參數為一個回呼函數,用於在文件讀取成功後執行。
回呼函數function()有兩個參數,錯誤訊息err和回傳資料data
const fs = require('fs') //读取文件 (文件路径,编码格式(可省略),回调函数) fs.readFile('./1.txt','utf8',function(err,data) { if(err) { return console.log('文件读取失败' + err.message); } console.log(data); })
2.檔案內容的寫入
同步方法writeFileSync()
writeFileSync()有三個參數:第一個參數為寫入檔案的路徑;第二個參數為寫入的資料;第三個參數為options,預設值為null,其中有encoding(編碼,預設為utf8)、 flag(識別位,預設為w)和mode(權限位,預設為0o666),也可直接傳入encoding。
const fs = require('fs') let data = fs.writeFileSync("./1.txt", "Hello World!");
非同步方法writeFile()
writeFile()在writeFileSync()的基礎上,還多一個回呼函數。
fs.writeFile('./1.txt','你好!',function(err) { if(err) { return console.log('文件写入失败' + err.message); } console.log('文件写入成功'); })
檔案寫入操作,在原始檔案有內容的情況下,新寫入的內容會覆蓋原有的內容
推薦學習:《nodejs影片教學 》
以上是node中fs是內建模組嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!