首頁 >web前端 >前端問答 >node中fs是內建模組嗎

node中fs是內建模組嗎

WBOY
WBOY原創
2022-04-27 15:22:222294瀏覽

在node中,fs是內建模組,是指檔案系統模組,用於讀寫檔案;fs模組提供了用於滿足使用者對檔案操作需求的方法和屬性,包括檔案目錄的建立、刪除、查詢以及檔案內容的讀取和寫入等,並且同時提供了非同步和同步的方法。

node中fs是內建模組嗎

本教學操作環境:windows10系統、nodejs 12.19.0版本、Dell G3電腦。

node中fs是內建模組嗎

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn