5、
EventEmitter 支持若干个事件监听器。
当事件触发时,注册到这个事件的事件监听器被依次调用
6、
Buffer类,该类用来创建一个专门存放二进制数据的缓存区
可以用buffer内容或者buff size进行初始化
/*
var buf = new Buffer(15);
var len = buf.write('写入buff')
console.log(len + ":" + buf.length);
console.log(buf.toString('utf-8', 0, len));
var json = buf.toJSON();
console.log(json);
*/
//********************
//读写数据
var fs = require('fs');
var data = '';
//read 部分
var readerStream = fs.createReadStream('input.txt');
readerStream.setEncoding('UTF8');
readerStream.on('data', function(chunk) {
data += chunk;
});
readerStream.on('end', function() {
console.log(data);
});
readerStream.on('error', function(err) {
console.log(err.stack);
});
//write 部分
var wData = '写入Buff!';
var writerStream = fs.createWriteStream('output.txt');
writerStream.write(wData, 'UTF8');
writerStream.end();
writerStream.on('finish', function() {
console.log("写入完成。");
});
writerStream.on('error', function(err) {
console.log(err.stack);
});
//压缩pipe
var zlib = require('zlib');
fs.createReadStream('input.txt').pipe(zlib.createGzip()).pipe(fs.createWriteStream('input.rar'))
console.log("压缩文件");
fs.createReadStream('input.rar')
.pipe(zlib.createGunzip())
.pipe(fs.createWriteStream('input1.txt'));
console.log("解压文件");