Node學(xué)習(xí)二:fs 文件系統(tǒng)

常用方法

  • fs.access(): 檢查文件是否存在消约,以及 Node.js 是否有權(quán)限訪問醇坝。
  • fs.appendFile(): 追加數(shù)據(jù)到文件牡整。如果文件不存在,則創(chuàng)建文件疼约。
  • fs.chmod(): 更改文件(通過傳入的文件名指定)的權(quán)限卤档。相關(guān)方法:fs.lchmod()fs.fchmod()程剥。
  • fs.chown(): 更改文件(通過傳入的文件名指定)的所有者和群組劝枣。相關(guān)方法:fs.fchown()fs.lchown()织鲸。
  • fs.close(): 關(guān)閉文件描述符舔腾。
  • fs.copyFile(): 拷貝文件。
  • fs.createReadStream(): 創(chuàng)建可讀的文件流搂擦。
  • fs.createWriteStream(): 創(chuàng)建可寫的文件流稳诚。
  • fs.mkdir(): 新建文件夾。
  • fs.mkdtemp(): 創(chuàng)建臨時目錄瀑踢。
  • fs.rm(): 刪除文件扳还,也可刪除目錄。
  • fs.rmdir(): 刪除文件夾橱夭。
  • fs.rename(): 重命名/移動 文件或文件夾氨距。
  • fs.open(): 設(shè)置文件模式。
  • fs.readdir(): 讀取目錄的內(nèi)容棘劣。
  • fs.readFile(): 讀取文件的內(nèi)容俏让。相關(guān)方法:fs.read()。
  • fs.readlink(): 讀取符號鏈接的值茬暇。
  • fs.realpath(): 將相對的文件路徑指針(...)解析為完整的路徑首昔。
  • fs.stat(): 返回文件(通過傳入的文件名指定)的狀態(tài),可用來判斷文件是否存在而钞。相關(guān)方法:fs.fstat()沙廉、fs.lstat()拘荡。
  • fs.symlink(): 新建文件的符號鏈接臼节。
  • fs.truncate(): 將傳遞的文件名標(biāo)識的文件截斷為指定的長度。相關(guān)方法:fs.ftruncate()珊皿。
  • fs.link(): 新建指向文件的硬鏈接网缝。
  • fs.unlink(): 刪除文件或符號鏈接。
  • fs.unwatchFile(): 停止監(jiān)視文件上的更改蟋定。
  • fs.utimes(): 更改文件(通過傳入的文件名指定)的時間戳粉臊。相關(guān)方法:fs.futimes()
  • fs.watchFile(): 開始監(jiān)視文件上的更改驶兜。相關(guān)方法:fs.watch()扼仲。
  • fs.writeFile(): 將數(shù)據(jù)寫入文件远寸。相關(guān)方法:fs.write()。

使用例子

判斷文件/目錄是否存在

使用 fs.access

// 判斷文件/目錄 是否存在
fs.access('./data', fs.constants.F_OK, err => {
    console.log(`${err ? '不存在' : '存在'}`);
})

// 判斷文件是否可讀 
fs.access(file, constants.R_OK, (err) => {
  console.log(`${file} ${err ? '不可讀' : '可讀'}`);
});

// 判斷文件是否可寫
fs.access(file, constants.W_OK, (err) => {
    console.log(`${file} ${err ? '不可寫' : '可寫'}`);
});

使用 fs.stat()

fs.stat('./data', (err, stats) => {
    if (err) console.log('文件/目錄不存在')
    // 不存在時屠凶,stats 為 undefined
    console.log('stats:', stats)
})

創(chuàng)建目錄

創(chuàng)建一級文件夾驰后,多層級會報錯

fs.mkdir('./data', err => {
   if (err) throw err
})

創(chuàng)建多層級目錄

fs.mkdir('./data/test/test', { recursive: true }, err => {
   if (err) throw err
})

刪除目錄

刪除指定文件夾,且該文件夾下必須為空

fs.rmdir('./data', err => {
    if (err) throw err
})

刪除目錄矗愧,包括該目錄下的所有文件夾與文件

fs.rmdir('./data/test', { recursive: true },  err => {
    if (err) throw err
})

同上一樣的效果

fs.rm('./data/test', { recursive: true }, err => {
    if (err) throw err
})

刪除文件

使用 fs.unlink

fs.unlink('./data/test.txt', err => {
    if (err) throw err
})

使用 fs.rm

fs.rm('./data/test.txt', err => {
    if (err) throw err
})
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末灶芝,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子唉韭,更是在濱河造成了極大的恐慌夜涕,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件属愤,死亡現(xiàn)場離奇詭異女器,居然都是意外死亡,警方通過查閱死者的電腦和手機住诸,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進店門晓避,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人只壳,你說我怎么就攤上這事俏拱。” “怎么了吼句?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵锅必,是天一觀的道長。 經(jīng)常有香客問我惕艳,道長搞隐,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任远搪,我火速辦了婚禮劣纲,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘谁鳍。我一直安慰自己癞季,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布倘潜。 她就那樣靜靜地躺著绷柒,像睡著了一般。 火紅的嫁衣襯著肌膚如雪涮因。 梳的紋絲不亂的頭發(fā)上废睦,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天,我揣著相機與錄音养泡,去河邊找鬼嗜湃。 笑死奈应,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的购披。 我是一名探鬼主播钥组,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼今瀑!你這毒婦竟也來了程梦?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤橘荠,失蹤者是張志新(化名)和其女友劉穎屿附,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體哥童,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡挺份,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了贮懈。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片匀泊。...
    茶點故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖朵你,靈堂內(nèi)的尸體忽然破棺而出各聘,到底是詐尸還是另有隱情,我是刑警寧澤抡医,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布躲因,位于F島的核電站,受9級特大地震影響忌傻,放射性物質(zhì)發(fā)生泄漏大脉。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一水孩、第九天 我趴在偏房一處隱蔽的房頂上張望镰矿。 院中可真熱鬧,春花似錦俘种、人聲如沸秤标。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽抛杨。三九已至够委,卻和暖如春荐类,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背茁帽。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工玉罐, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留屈嗤,地道東北人。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓吊输,卻偏偏與公主長得像饶号,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子季蚂,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,786評論 2 345

推薦閱讀更多精彩內(nèi)容