node fs模块的写入问题

发布于 2022-09-04 04:34:54 字数 459 浏览 38 评论 0

我现在通过一个mp3创建了一个 可读流,用来读取数据,让后用一个可写流入写入数据,但是写出的数据为空,不知道为什么?求大神讲究我的错误

var ws21_4 = fs.createWriteStream(__dirname + '/test/Until You.mp3');
var rs21_4 = fs.createReadStream(__dirname + '/test/untiyou.mp3');
rs21_4.on('data', function (data) {
  var flag = ws21_4.write(data);
  console.log(flag);
  if (flag == false) {
    //ws21_4.close(); // 2.加这么一句 会有64K很少一部分。
  }//1. 输出的文件0字节。。。
});

所以我猜想会不会我哪里流程没有处理正确?但是查了文档也没找到啥。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

給妳壹絲溫柔 2022-09-11 04:34:54
fs.createReadStream(__dirname + '/test/Until You.mp3')
    .pipe(fs.createWriteStream(__dirname + '/test/untiyou.mp3'));

或者

var rs = fs.createReadStream(__dirname + '/test/Until You.mp3');
var ws = fs.createWriteStream(__dirname + '/test/untiyou.mp3');

rs.on('data', function (chunk) {
    if (ws.write(chunk) === false) {
        rs.pause();
    }
});

rs.on('end', function () {
    ws.end();
});

ws.on('drain', function () {
    rs.resume();
});
揽清风入怀 2022-09-11 04:34:54

加个关闭试一下

rs21_4.on('end', function() { // 当没有数据时,关闭数据流
    ws21_4.end();
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文