Node.js中的文件系統(tǒng)(file system)模塊詳解
概述
Node.js提供了一個(gè)文件系統(tǒng)模塊(fs模塊),用于處理文件系統(tǒng)的交互。這個(gè)模塊允許你讀取、寫(xiě)入、修改、刪除文件,以及創(chuàng)建和讀取目錄。文件系統(tǒng)模塊提供了同步和異步的方法,可以根據(jù)需要選擇合適的方法。
基本用法
const fs = require('fs');文件讀取
異步讀取文件
fs.readFile('example.txt', 'utf8', (err, data) => {
if (err) {
console.error('讀取文件錯(cuò)誤:', err);
return;
}
console.log('文件內(nèi)容:', data);
});同步讀取文件
try {
const data = fs.readFileSync('example.txt', 'utf8');
console.log('文件內(nèi)容:', data);
} catch (err) {
console.error('讀取文件錯(cuò)誤:', err);
}文件寫(xiě)入
異步寫(xiě)入文件
const content = '寫(xiě)入文件的內(nèi)容';
fs.writeFile('example.txt', content, 'utf8', (err) => {
if (err) {
console.error('寫(xiě)入文件錯(cuò)誤:', err);
return;
}
console.log('文件寫(xiě)入成功');
});同步寫(xiě)入文件
const content = '寫(xiě)入文件的內(nèi)容';
try {
fs.writeFileSync('example.txt', content, 'utf8');
console.log('文件寫(xiě)入成功');
} catch (err) {
console.error('寫(xiě)入文件錯(cuò)誤:', err);
}文件和目錄操作
異步創(chuàng)建目錄
fs.mkdir('new_directory', (err) => {
if (err) {
console.error('創(chuàng)建目錄錯(cuò)誤:', err);
return;
}
console.log('目錄創(chuàng)建成功');
});同步創(chuàng)建目錄
try {
fs.mkdirSync('new_directory');
console.log('目錄創(chuàng)建成功');
} catch (err) {
console.error('創(chuàng)建目錄錯(cuò)誤:', err);
}異步讀取目錄
fs.readdir('new_directory', (err, files) => {
if (err) {
console.error('讀取目錄錯(cuò)誤:', err);
return;
}
console.log('目錄中的文件:', files);
});同步讀取目錄
try {
const files = fs.readdirSync('new_directory');
console.log('目錄中的文件:', files);
} catch (err) {
console.error('讀取目錄錯(cuò)誤:', err);
}文件和目錄刪除
異步刪除文件
fs.unlink('example.txt', (err) => {
if (err) {
console.error('刪除文件錯(cuò)誤:', err);
return;
}
console.log('文件刪除成功');
});同步刪除文件
try {
fs.unlinkSync('example.txt');
console.log('文件刪除成功');
} catch (err) {
console.error('刪除文件錯(cuò)誤:', err);
}異步刪除目錄
fs.rmdir('new_directory', (err) => {
if (err) {
console.error('刪除目錄錯(cuò)誤:', err);
return;
}
console.log('目錄刪除成功');
});同步刪除目錄
try {
fs.rmdirSync('new_directory');
console.log('目錄刪除成功');
} catch (err) {
console.error('刪除目錄錯(cuò)誤:', err);
}總結(jié)
Node.js文件系統(tǒng)模塊提供了豐富的方法,用于讀取、寫(xiě)入、操作文件和目錄。無(wú)論是異步還是同步的操作,開(kāi)發(fā)者都可以根據(jù)項(xiàng)目的需要選擇適當(dāng)?shù)姆椒?。文件系統(tǒng)模塊是Node.js強(qiáng)大而靈活的一部分,為文件操作提供了方便的API。
到此這篇關(guān)于Node.js中的文件系統(tǒng)(file system)模塊的文章就介紹到這了,更多相關(guān)node.js文件系統(tǒng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于Express+multer實(shí)現(xiàn)文件上傳功能
Multer是Node.js中的一個(gè)第三方包,或者說(shuō)是第三方中間件,主要用于是實(shí)現(xiàn)文件上傳的功能,本文小編講給大家詳細(xì)介紹一下基于Express+multer來(lái)實(shí)現(xiàn)文件上傳功能,文章通過(guò)代碼示例和圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11
Nestjs自定義注解實(shí)現(xiàn)接口權(quán)限控制詳解
這篇文章主要為大家介紹了Nestjs自定義注解實(shí)現(xiàn)接口權(quán)限控制詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12
基于NodeJS開(kāi)發(fā)釘釘回調(diào)接口實(shí)現(xiàn)AES-CBC加解密
這篇文章主要介紹了基于NodeJS開(kāi)發(fā)釘釘回調(diào)接口 實(shí)現(xiàn)AES-CBC加解密,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
Node.JS獲取GET,POST數(shù)據(jù)之queryString模塊使用方法詳解
本文將詳細(xì)介紹nodeJS中的queryString模塊使用方法,包括Node.JS獲取GET,POST數(shù)據(jù)的方法,需要的朋友可以參考下2020-02-02
Puppeteer 爬取動(dòng)態(tài)生成的網(wǎng)頁(yè)實(shí)戰(zhàn)
這篇文章主要介紹了Puppeteer 爬取動(dòng)態(tài)生成的網(wǎng)頁(yè)實(shí)戰(zhàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-11-11
Node.js對(duì)MongoDB進(jìn)行增刪改查操作的實(shí)例代碼
這篇文章主要介紹了Node.js對(duì)MongoDB進(jìn)行增刪改查操作 ,需要的朋友可以參考下2019-04-04
實(shí)時(shí)通信WebSocket的原理和工作過(guò)程
WebSocket持久連接使得服務(wù)器可以主動(dòng)向客戶(hù)端推送數(shù)據(jù),而不需要等待客戶(hù)端的請(qǐng)求,是一種專(zhuān)門(mén)設(shè)計(jì)用于實(shí)現(xiàn)持久連接的協(xié)議,WebSocket的持久連接特性使其成為實(shí)時(shí)性要求高的應(yīng)用的理想選擇,如在線(xiàn)聊天、實(shí)時(shí)游戲、數(shù)據(jù)監(jiān)控等2023-12-12
Nodejs封裝類(lèi)似express框架的路由實(shí)例詳解
在本篇文章里小編給大家整理的是關(guān)于Nodejs封裝類(lèi)似express框架的路由實(shí)例內(nèi)容,有需要的朋友們學(xué)習(xí)下。2020-01-01
Node.js引入U(xiǎn)IBootstrap的方法示例
這篇文章主要介紹了Node.js引入U(xiǎn)IBootstrap的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-05-05
nodejs連接mysql數(shù)據(jù)庫(kù)及基本知識(shí)點(diǎn)詳解
這篇文章主要介紹了nodejs連接mysql數(shù)據(jù)庫(kù),結(jié)合實(shí)例形式總結(jié)分析了nodejs連接與操作mysql數(shù)據(jù)庫(kù)的相關(guān)模板、配置及mysql數(shù)據(jù)庫(kù)查詢(xún)、添加數(shù)據(jù)等操作技巧,需要的朋友可以參考下2018-03-03

