그리고 promise를 사용하는 문자열에 대한 또 다른 하나 :
function getStream(stream) {
return new Promise(resolve => {
const chunks = [];
# Buffer.from is required if chunk is a String, see comments
stream.on("data", chunk => chunks.push(Buffer.from(chunk)));
stream.on("end", () => resolve(Buffer.concat(chunks).toString()));
});
}
용법:
const stream = fs.createReadStream(__filename);
getStream(stream).then(r=>console.log(r));
.toString()
필요한 경우 바이너리 데이터와 함께 사용할을 제거하십시오 .
update : @AndreiLED가 문자열에 문제가 있음을 올바르게 지적했습니다. 내가 가지고있는 노드 버전으로 문자열을 반환하는 스트림을 얻을 수 없었지만 API 는 이것이 가능하다는 것을 알립니다 .