fs模塊是文件操作的封裝,它提供了文件的讀取、寫入、更名、刪除、遍歷目錄、鏈接等POSIX文件系統操作。
fs模塊提供異步'fs.readFile()'和同步'fs.readFileSync'兩個版本。
1.fs.readFile
格式:fs.readFile(filename,[endcoding],[callback(err,data)])
文件名稱:filename
Endcoding:utf-8
callback:回調函數,error是錯誤返回時
data是回調成功后的內容
var fs = require('fs');
fs.readFile('content.txt', 'utf-8', function(err, data) {
if (err) {
console.error(err);
} else {
console.log(data);
}
});
2.fs.readFileSync
格式:fs.readFileSync(filename, [encoding])是 fs.readFile 同步的版本。
3.fs.open
格式:fs.open(path, flags, [mode], [callback(err, fd)])
path:文件路徑
flags:可以是以下值
? r :以讀取模式打開文件。
? r+ :以讀寫模式打開文件。
? w :以寫入模式打開文件,如果文件不存在則創建。
? w+ :以讀寫模式打開文件,如果文件不存在則創建。
? a :以追加模式打開文件,如果文件不存在則創建。
? a+ :以讀取追加模式打開文件,如果文件不存在則創建。
mode:創建時給文件指定權限,默認值:0666
callback:將傳遞一個文件描述符fd
4.fs.read
格式:fs.read(fd, buffer, offset, length, position, [callback(err, bytesRead, buffer)])
var fs = require('fs');
fs.open('content.txt', 'r', function(err, fd) {
if (err) {
console.error(err);
return;
}
var buf = new Buffer(8);
fs.read(fd, buf, 0, 8, null, function(err, bytesRead, buffer) {
if (err) { console.error(err); return;
}
console.log('bytesRead: ' + bytesRead);
console.log(buffer);
})
});
運行結果則是:
bytesRead: 8
<Buffer 54 65 78 74 20 e6 96 87>