如何使用 Node 與文件描述符進行交互?
在與文件系統中的文件進行交互之前,您必須獲取文件描述符。
文件描述符是使用 fs
模塊提供的 open()
方法開啟文件時返回的東西,如下所示:
const fs = require('fs')
fs.open('/Users/flavio/test.txt', 'r', (err, fd) => {
//fd 是我們的文件描述符
})
注意我們在 fs.open()
調用的第二個參數中使用的 r
。
該標誌表示我們將文件以只讀方式打開。
您通常會使用其他標誌,如下:
r+
:打開文件以進行讀寫操作w+
:打開文件以進行讀寫操作,並將流定位到文件的開頭。如果文件不存在,則創建文件a
:打開文件以進行寫操作,並將流定位到文件的末尾。如果文件不存在,則創建文件a+
:打開文件以進行讀寫操作,並將流定位到文件的末尾。如果文件不存在,則創建文件
您也可以使用 fs.openSync
方法打開文件,它不像回調函數那樣提供文件描述符對象,而是直接返回它,如下所示:
const fs = require('fs')
try {
const fd = fs.openSync('/Users/flavio/test.txt', 'r')
} catch (err) {
console.error(err)
}
當您獲取文件描述符後,您可以按照自己的選擇進行所有需要它的操作,例如呼叫 fs.open()
和與文件系統進行互動的其他操作。