前言
在學習任何一個語言一定都會遇到檔案讀寫,在 nodeJS 中的檔案讀寫幾乎都能透過 fs 這個 module 來完成。
而且在 fs API 中有這麼一段話
All file system operations have synchronous and asynchronous forms.
對於開發者來說實在是非常棒,不像有些 module 同步與異步是分開成兩個不同的 module。
常用操作
讀取文件
以下要注意第二個參數要指定編碼,否則印出來會是 raw data 的形式:
1 | <Buffer 68 65 6c 6c 6f 2c 20 77 6f 72 6c 64 0a> |
1 | const fs = require('fs') |
寫入文件
writeFile
寫入文件時,第一個參數為路徑,第二個參數為寫入字串,第三個參數為編碼(預設為 utf-8)
1 | //asynchronous |
appendFile
若無此檔案,會自動建立,若有,則附加至尾端
(第一個參數為路徑,第二個參數為寫入字串,第三個參數為編碼(預設為 utf-8))
1 | fs.appendFile('./c.txt', 'append txt', (err) => { |
開檔案
以上 API 第一參數也可以放 fd,用 open 可以設定詳細權限並且回傳 fd。
1 | fs.open('./a.txt', 'r',(err, fd) => { |
刪檔案
1 | fs.unlink('a.txt', (err) => { |