nodejs文件操作模塊FS(File System)常用函數(shù)簡(jiǎn)明總結(jié)
件系統(tǒng)操作相關(guān)的函數(shù)挺多的。首先可以分為兩大類。
一類是異步+回調(diào)的。 一類是同步的。
在這里只對(duì)異步的進(jìn)行整理,同步的只需要在函數(shù)名稱后面加上Sync即可
1. 首先是一類最常規(guī)的讀寫(xiě)函數(shù),函數(shù)名稱和形式,應(yīng)該是起源于C語(yǔ)言的。
fs.open(文件路徑,讀寫(xiě)標(biāo)識(shí),[文件mode值,666],回調(diào)函數(shù)(err,文件句柄fd));
fs.read(文件句柄fd,被寫(xiě)入的buffer,offset,length,position,回調(diào)函數(shù)(err, bytesRead, buffer));
fs.write(文件句柄fd,被讀取的buffer,offset,length,position,回調(diào)函數(shù)(err,bytesWritten,buffer));
fs.close(文件句柄,回調(diào)函數(shù))
fs.truncate(文件句柄,截?cái)嚅L(zhǎng)度,回調(diào)函數(shù));
fs.fsync(文件句柄,回調(diào)函數(shù));
2. 直接對(duì)文件進(jìn)行讀寫(xiě)的,用起來(lái)比較方便。
fs.readFile(文件名,編碼,回調(diào)函數(shù)(err,data));
fs.writeFile(文件名,數(shù)據(jù),編碼,回調(diào)函數(shù)(err));
fs.appendFile(文件名,數(shù)據(jù),編碼,回調(diào)函數(shù)(err));
3. 其它常用文件操作
判斷文件是否存在
fs.exists(文件路徑,callback(是否存在));
重命名
fs.rename(舊文件名,新文件名,回調(diào)函數(shù));
文件所有者變更
fs.chown(文件名,uid,gid,回調(diào)函數(shù));/fs.fchown(文件句柄fd,uid,gid,回調(diào)函數(shù));/fs.lchown(鏈接路徑,uid,gid,回調(diào)函數(shù));
文件權(quán)限變更
fs.chmod(文件名,mode,回調(diào)函數(shù));/fs.fchmod(文件句柄,mode,回調(diào)函數(shù));/fs.lchmod(鏈接路徑,mode,回調(diào)函數(shù));
文件信息
fs.stat(文件路徑,回調(diào)函數(shù)(err.fs.Stats對(duì)象));/fs.fstat(文件句柄fd,回調(diào)函數(shù)(err.fs.Stats對(duì)象));/fs.lstat(鏈接路徑,回調(diào)函數(shù)(err.fs.Stats對(duì)象));
文件時(shí)間
fs.utimes(文件路徑,訪問(wèn)時(shí)間,新建時(shí)間,回調(diào)函數(shù));/fs.futimes(文件句柄,訪問(wèn)時(shí)間,新建時(shí)間,回調(diào)函數(shù));
監(jiān)視文件
fs.watchFile(文件名,[options],listener_callback(當(dāng)前文件的stats,改變前的stats));
fs.unwatchFile(文件名);
4. 目錄操作
fs.mkdir(路徑,權(quán)限mode/777,回調(diào)函數(shù));
fs.rmdir(路徑,回調(diào)函數(shù));
fs.readdir(路徑,回調(diào)函數(shù)(err,fileNameArray));
5. 鏈接文件操作
創(chuàng)建一個(gè)鏈接
fs.link(srcpath, dstpath, [callback])
fs.symlink(destination, path, [type], [callback])
讀取鏈接指向的路徑
fs.readlink(path, [callback(err,linkstr)])
fs.unlink(path,[callback]);
相關(guān)文章
詳解nodejs通過(guò)代理(proxy)發(fā)送http請(qǐng)求(request)
本篇文章主要介紹了nodejs通過(guò)代理(proxy)發(fā)送http請(qǐng)求(request),具有一定的參考價(jià)值,有興趣的可以了解一下2017-09-09
windows系統(tǒng)下安裝yarn的詳細(xì)教程
yarn是一個(gè)新的JS包管理工具,它的出現(xiàn)是為了彌補(bǔ)npm的一些缺陷,下面這篇文章主要給大家介紹了關(guān)于windows系統(tǒng)下安裝yarn的詳細(xì)教程,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02
node.js中的console.warn方法使用說(shuō)明
這篇文章主要介紹了node.js中的console.warn方法使用說(shuō)明,本文介紹了console.warn的方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下2014-12-12
pm2工具在Node.js開(kāi)發(fā)部署中的重要作用詳解
這篇文章主要為大家介紹了pm2工具在Node.js開(kāi)發(fā)部署中的重要作用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12
Nodejs探秘之深入理解單線程實(shí)現(xiàn)高并發(fā)原理
這篇文章主要介紹了Nodejs單線程實(shí)現(xiàn)高并發(fā)原理,對(duì)Node.js感興趣的同學(xué),可以參考下2021-04-04
Node.js中console.log()輸出彩色字體的方法示例
這篇文章主要給大家介紹了關(guān)于Node.js中console.log()輸出彩色字體的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Node.js具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
Node.js操作mysql數(shù)據(jù)庫(kù)增刪改查
這篇文章主要介紹使用Node.js操作mysql數(shù)據(jù)庫(kù)增刪改查的相關(guān)資料,需要的朋友可以參考下2016-03-03

