1. 程式人生 > >Node.js中使用pipe拷貝大文件不能完全拷貝的解決辦法

Node.js中使用pipe拷貝大文件不能完全拷貝的解決辦法

ads 沒有 str pat some pipe reads 大文件 close

原來的代碼如下:

var readable = fs.createReadStream( filepath );
var writable = fs.createWriteStream( outFilepath ); 
readable.pipe( writable );
doSomeThing();

但是這樣的代碼會導致在文件沒有傳輸完成的情況下就執行了doSomeThing()
改成如下代碼:

var readable = fs.createReadStream( filepath );
var writable = fs.createWriteStream( outFilepath ); 
readable.pipe( writable );
readable.on(‘close‘, ()=> { doSomeThing(); }) });

就可以了。

Node.js中使用pipe拷貝大文件不能完全拷貝的解決辦法