nodejs不closuresWindows上的文件句柄?
运行下面的代码后,文件句柄仍然在Windows上打开,如何closures它?
var Name="1.mp4"; var inp = fs.createReadStream("Temp/" + Name); var out = fs.createWriteStream("Video/" + Name); inp.pipe(out); inp.on("end", function() { fs.unlink("Temp/" + Name, function (){ out.close(); console.log("unlink this file:",Name ); }); });
屏幕快照:文件句柄不在Windows上隐藏
你也需要closuresinp
而不是只是out
。 你可以通过调用inp.close();
来做到这一点inp.close();
在同一点你已经调用out.close();
。
你也可以简单地移动文件
fs.rename("Temp/" + Name, "Video/" + Name, function() { console.log("Renamed:", Name) });
而不是重写文件。