我正在使用ya-csv库,该库需要文件或流作为输入,但是我有一个字符串。
如何将该字符串转换为Node中的流?
最佳答案
从节点10.17开始,stream.Readable具有from
方法,可以轻松地从任何可迭代对象(包括数组文字)创建流:
const { Readable } = require("stream")
const readable = Readable.from(["input string"])
readable.on("data", (chunk) => {
console.log(chunk) // will be called once with `"input string"`
})
请注意,至少在10.17和12.3之间,字符串本身是可迭代的,因此
Readable.from("input string")
将起作用,但每个字符发出一个事件。 Readable.from(["input string"])
将为数组中的每个项目发出一个事件(在这种情况下为一个项目)。还要注意,在以后的节点中(可能是12.3,因为文档说函数已被更改),所以不再需要将字符串包装在数组中。
https://nodejs.org/api/stream.html#stream_stream_readable_from_iterable_options