我尝试使用管道复制文件,但是运行代码后,只有一个空文件。在控制台中没有错误。
const writeStream = fs.createWriteStream( newLocation); // album1/fff28042018.jpg
writeStream.on('error', function(e){console.log(e)});
const readStream = fs.createReadStream(oldLocation); // imagesource/fff.jpg
readStream.on('error', function(e){console.log(e)});
readStream.pipe(writeStream);
writeStream.close();
readStream.close();
我希望将图像从imagesource / fff.jpg复制到新文件album1 / fff28042018.jpg。但最后我有了一个新的空文件album1 / fff28042018.jpg
在出现问题“是源文件存在”之前。
答案 0 :(得分:0)
好像您要在数据传输完成之前关闭流。通常,当可读性完成管道传递时,它将在可写流上发出end
,并且该流会自动关闭。
这是this答案中引用的最短的
。fs.createReadStream('test.log').pipe(fs.createWriteStream('newLog.log'));