文件读取也分为:
- 同步文件读取
fs.readSync(fd, buffer, offset, length, position)
- 异步文件读取
fs.read(fd, buffer, offset, length, positon,callback)
- 简单文件读取
fs.readFile(file[, options], callback)fs.readFileSync(file[,options])
- 流式文件读取
vas rs = fs.createReadStream(file)
例子
简单文件读取
var fs = require('fs');fs.readFile('an.jpg', function (err, data) {if(!err) {// 将data保存fs.writeFile("test.jpg", data, function (err) {if(!err) {console.log('复制文件成功');}})}})
可读取流:方式一
var fs = require('fs');// 创建一个读取流var rs = fs.createReadStream("a.mp3");// 创建一个写入流var ws = fs.createWriteStream("write.mp3");// 如果要读取一个读取流中的数据,必须要为可读流绑定一个data事件// data事件绑定完毕,会自动读取数据rs.on("data", function (data) {// 将读取到的数据写入ws.write(data);});// 监听流的开启和关闭rs.on("open", function () {console.log("可读流打开了...");});rs.on("close", function () {console.log('可读流关闭了...');});ws.on("open", function () {console.log('写入流打开了...');});ws.on("close", function () {console.log('写入流关闭了...');});
可读取流:方式二
var fs = require('fs');var rs = fs.createReadStream('a.mp3');var ws = fs.createWriteStream('write.mp3');// pipe()可以将可读流的内容,直接输出到可写流中rs.pipe(ws);
