node.js - nodejs 先写入文件createWriteStream,再读取文件内容createReadStream,获取不到信息
迷茫
迷茫 2017-04-17 14:28:37
0
1
451
request(url).pipe(fs.createWriteStream(fpath));
                            
var bu = fs.createReadStream(fpath, {start: 0, end: 262});
dlog(bu);

我先写入文件,再读取里面的东西,但是createReadStream读取不到东西。这是为什么?是因为上面的操作是异步进行的吗?如果是,那应该如何获取呢?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

reply all(1)
Ty80

stream is an asynchronous operation. You will not get the result if you write it synchronously. So:

request(url)
    .pipe(fs.createWriteStream(fpath))
    .on('close', function() {
        var bu = fs.createReadStream(fpath, {start: 0, end: 262});
        bu.on('data', function(chunk) {
            console.log(chunk.toString());//这是结果
        });
    });

See more documentation: fs

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!