首页 Node.js核心模块手册

输入输出流,基础类 stream


继承接口:事件类 EventEmitter

读取 Readable


可用流数据读取相关对象
对象 描述
fs.ReadStream 读取文件
http.IncomingMessage 客户端请求 或 服务器响应
net.Socket socket端口对象
child.stdout 创建子进程标准输出流(如果子进程与父进程共享输入输出流,则子进程标准输出流废弃)
child.stderr 创建子进程标准错误输出流(如果子进程与父进程共享输入输出流,则子进程标准错误输出流废弃)
process.stdin 创建进程标准输入流

Gzip

Deflate

DeflateRaw

压缩数据

对象方法
方法 描述
read() 读取数据
setEncoding() 指定编码读取数据
pause() 通知对象停止触发data事件
resume() 通知对象恢复触发data事件
pipe() 设置一个数据通道,取出所有数据输出到其它目标对象中
unpipe() 取消pipe设置的通道
unshift() 取消解析器绑定

可触发事件
事件名 描述
readable 可读取,从流中读取数据到缓存区时触发
data 可获取,从缓存区获取数据时触发(参数值为对象 或 字符串)
end 读取完,所有数据时触发
close 关闭时,读取流对象关闭时触发(不是所有对象都会触发)
error 错误,读取流数据产生错误触发

写入 Writeable


可用流数据写入相关对象
对象 描述
fs.WriteStream 写入文件
http.ClientRequest 写入HTTP客服端请求数据
http.ServerResponse 写入HTTP服务器响应数据
net.Socket 读写TCP 或 UNIX流
child.stdin 创建子进程标准输入流,该对象用close方法终止子进程(如果子进程与父进程共享输入输出流,则子进程标准输入流废弃)
process.stdout 创建进程标准输出流
process.stderr 创建进程标准错误输出流

Gunzip

Inflate

InflateRaw

解压数据

对象方法
对象 描述
write() 写入数据
end() 结束写入,强制缓存区数据写入目标对象中(调用后将不能继续向目标对象写入)

可触发事件
事件名 描述
drain 可写入,从流中读取数据到缓存区时触发(write方法返回false时触发)
finish end 被调用,数据全部写入缓存区时触发
pipe 读取流对象的pipe方法被调用时触发
unpipe 读取流对象的unpipe方法被调用时触发
error 错误,写入流数据产生错误触发