nodejs写入的文件为空

时间:2014-10-04 19:27:32

标签: node.js streamwriter

我有一个小问题,当我尝试将一个文件从我的tmp目录复制到我的ftp目录时,写入文件为空。我没有错,我不明白我做错了什么

var ftpPath = "/var/www/ftp/",
    zipPath = "/var/www/tmp/",
    file = "test";
fs.createReadStream(zipPath + file).pipe(fs.createWriteStream(ftpPath + file));

我的测试文件包含loremipsum样本。

如果您有任何解决方案,我接受它,这是我的应用程序中唯一的错误行:(

1 个答案:

答案 0 :(得分:1)

首先,确保文件 / var / www / tmp / test 存在,是一个文件,并且对于启动脚本的用户具有正确的权限。

其次,确保 / var / www / ftp / 具有写入权限。

然后以下代码应该有效:

var readerStream = fs.createReadStream('/var/www/tmp/test');
var writerStream = fs.createWriteStream('/var/www/ftp/test');
readerStream.pipe(writerStream);

修改:

尝试使用此代码段进行调试:

var data;
var readerStream = fs.createReadStream('/var/www/tmp/test');
readerStream.on('data', function(data) {
  data += data;
});

readerStream.on('end', function() {
  console.log(data);
});