nodejs-文件流
来源:互联网 发布:网页软件游戏开发 编辑:程序博客网 时间:2024/06/05 16:00
nodejs中把对象数据转换成流数据的对象(在此我们先介绍有关文件的)
fs.ReadStream 把文件数据转成流数据,用于读取文件的
方法:
read 读取数据
setEcoding:设置编码
pause:暂停触发data事件(当读取来自文件的数据触发data事件)
resume:恢复触发data事件
pipe:设计一个数据管道,
unpipe:取消数据管道
事件
open:当文件打开时触发
readable:可以读时候触发
data:读取文件数据时候触发
end:读完所有的文件触发
error:读取错误时候触发
close:读取流对象关闭时候触发
fs.WriteStream 把流数据转换成对象数据,用于写文件的
方法:
write:写入数据
end:当没有数据要写入流中代用该方法
事件:
drain:当write返回fasle时候触发(缓冲区已经满了),
finish:当调用end方法(没有数据要写入流中了)
pipe:用于读取数据流调用了pipe方法时候触发
unpipe:用于读去数据流代用了unpipi方法时候触发
error:写入时候产生错误
使用一个readstream创建一个吧文件转成流数据的对象
var fs=require("fs");
var optations={
flag:"r",
encoding:"utf-8",
autoClose:true,
stat:0,
end :3
}
var file=fs.createReadStream('./wather.txt',optations)
console.log(file);
file.pause();
file.on("open",function(fd){
console.log("打开文件");
})
file.on("data",function(data){
console.log("读取数据");
console.log(data);
})
file.on("error",function(err){
console.log("读取数据shibao");
})
file.on("close",function(){
console.log("读取数据对象关闭");
})
file.on("end",function(){
console.log("读取数据完成了");
})
setTimeout(function(){file.resume()},1000);
运行结果
把一个文件写入另一个文件
var fs=require("fs");
var optations={
flag:"r",
encoding:"utf-8",
autoClose:true,
start:0,
end :3
}
var optationout={
flags:"a",
encoding:"utf-8",
start:0
}
var file=fs.createReadStream('./wather.txt',optations)
var out=fs.createWriteStream('./watherout.txt',optationout)
out.on("open",function(fd){
console.log("打开写入文件");
})
file.on("open",function(fd){
console.log("打开文件");
})
file.on("data",function(data){
console.log("读取数据");
out.write(data);
})
file.on("error",function(err){
console.log("读取数据shibao");
})
file.on("close",function(){
console.log("读取数据对象关闭");
})
file.on("end",function(){
out.end("写入完成","utf-8",function(){
console.log("读取数据完成了,共写入"+out.bytesWritten+"个字节");
})
})
利用管道写入数据
var fs=require("fs");
var file=fs.createReadStream('./watherout.txt');
var out=fs.createWriteStream('./watherout1.txt');
file.pipe(out,{end:false})
file.on("end",function(){
out.end("ok")
})
- nodejs文件流操作
- nodejs-文件流
- nodejs移动文件
- nodejs express 上传文件
- nodejs下载文件
- Nodejs遍历文件
- NODEJS 上传文件
- nodejs 安装 上传文件
- Nodejs 文件上传
- nodejs 下载文件
- nodejs文件操作
- nodejs文件操作
- nodejs 文件操作笔记
- nodejs之文件操作
- nodejs保存文件问题
- NodeJs文件操作备注
- NodeJS 读取XML文件
- nodejs 遍历文件夹,文件
- 微信小程序 - 开发工具的下载
- Spring Memcached 使用incr 方法报cannot increment or decrement non-numeric value 解决方法
- log4j配置详解
- 读书
- 初学vuejs-1
- nodejs-文件流
- XMPP协议及其扩展详解
- warning: the frame size of 1104 bytes is larger than 1024 bytes [-Wframe-larger-than=]
- Sort of sort
- 微信小程序 - 开发工具界面一览
- 10.25 套路化考试
- (32位)arm 汇编学习(1)
- UVa201
- Spark运行架构