ndoe fs流

__dirname 表示当前文件所在的目录的绝对路径
__filename 表示当前文件的绝对路径
module.filename ==== __filename 等价
process.cwd() 返回运行当前脚本的工作目录的路径
process.chdir() 改变工作目录

createDir在指定路径下创建文件夹

fs是查看文件信息的/文件或者文件夹
fs.stat(file/dir,function(err,st))
fs.statSync(file/dir)
st.size 字节,大小
st.isFile 判断它是不是文件
st.isDirectory 判断它是不是文件夹

删除文件
fs.unlink(文件,function(err){})
fs.unlinkSync(文件)
fs.exists('src');

删除空文件夹
fs.remove.directory
fs.rmdir(文件夹,function(err){})
fs.rmdirSync(文件夹)

对文件/文件夹重新命名
fs.rename(file/dir,新名字,function(err){})


流是Node.js移动数据的方式
由于数据是流,这就意味着完成文件读取之前,从收到最初的字节开始,就可对数据动作
1、以流的方式读取文件
var rs=fs.ReadStream('./lib/1.mp4')
2、以流的方式创建一个空容器
var ws=fs.WriteStrean('./lib/2.mp4')
3、转移数据
第一种方法
rs.on('data',function(chunk){.
ws.write(chunk);
});
ws.on('end',function()){
ws.end();
}


第二种方法
rs.on('data',function(chunk){.
if(!ws.write(chunk){
rs.pause(); 暂停只读数据流
})
});
drain事件来判断是么时候只写数据流已经将缓存中的数据中的数据写入目标,可以传入下一个代写数据
ws.on('drain',function(){
rs.resume() 循环读取
})

大文件拷贝
1、创建一个只读数据流
var rs=fs.createReadStream('./lib/1.mp4');
2、创建一个只写数据流
var ws=fs.createWriteStream('./lib/a.mp4')
3、管道流输出
rs.pipe(ws)

 

posted @ 2018-10-10 14:06  maps..xy  阅读(170)  评论(0编辑  收藏  举报