码迷,mamicode.com
首页 > Web开发 > 详细

Nodejs_day03

时间:2015-09-15 23:16:56      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:

1.Stream (流)

Stream有四种流类型

 1.Readable - 可读操作

 2.Writable - 可写操作

 3.Duplex - 可读可写操作

 4.Transform - 操作被写入数据,然后读出结果

 

所有的Stream对象都是EventEmitter的实例,

常用的事件:

 1.data - 当有数据可读时触发,

 2.end - 没有更多的数据可读时触发

 3.error - 在接收和写入的过程中发生错误时触发

 4.finish - 所有数据已被写入到底层系统时触发

 

一.从流中读取数据

var fs = require(‘fs‘)

var data = ‘‘;

//创建可读流
var readerStream = fs.createReadStream(‘test.txt‘)//读取test.txt中的内容

//设置编码为utf8
readerStream.setEncoding(‘UTF8‘)

//处理流事件,也就是开始读取文档
readerStream.on(‘data‘,function(chunk){
data += chunk;//chunk就是读取的文档内容
})

readerStream.on(‘end‘,function(){
console.log(data)//当读取完成时,输出读取的内容
})

readerStream.on(‘error‘,function(){
console.log(err.stack)//当读取过程总出现错误,将错误输出
})

console.log(‘程序执行完毕!‘)

 

 

var fs = require(‘fs‘)
var data = ‘我是李亚杰,正在学习nodejs‘

//创建一个可写入的流
var writeStream = fs.createWriteStream(‘out.txt‘)//将数据写入到out.txt,如果out.txt文件不存在,则自动创建

//使用utf8编码写入数据
writeStream.write(data,‘UTF8‘)

//标记文件末尾
writeStream.end()

//处理流事件
writeStream.on(‘finish‘,function(){
console.log(‘写入完成‘)
})

writeStream.on(‘error‘,function(err){
console.log(err.stack)
})

console.log(‘程序写入完毕‘)

Nodejs_day03

标签:

原文地址:http://www.cnblogs.com/liyajie/p/4811675.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!