{site_name}

{site_name}

🌜 搜索

Node.js 中的流(stream)是一种处理数据的抽象概念,它可以让我们以逐

编程 𝄐 0
node.js node red,node.js node-sass,node.js node-xlsx,node.js node_modules
Node.js 中的流(stream)是一种处理数据的抽象概念,它可以让我们以逐块(chunk-by-chunk)的方式处理数据,而不需要一次性将整个数据集加载到内存中。这意味着我们可以处理大量数据,同时避免内存限制。

Node.js 提供了四种主要类型的流:可读流(Readable)、可写流(Writable)、转换流(Transform)和双工流(Duplex)。其中,可读流用于从源头读取数据并向下游推送数据,可写流用于将数据写入目标位置,转换流用于对数据进行修改,而双工流则可以同时读取和写入数据。

以下是一个简单的例子,演示如何使用 Node.js 可读流和可写流:

javascript
const fs = require('fs');

// 创建可读流
const readableStream = fs.createReadStream('input.txt');

// 创建可写流
const writableStream = fs.createWriteStream('output.txt');

// 通过管道连接可读流和可写流
readableStream.pipe(writableStream);


在上面的代码中,我们首先使用 fs 模块的 createReadStream 方法创建了一个可读流,然后使用 createWriteStream 方法创建了一个可写流。最后,我们使用 pipe 方法将两个流连接起来,使得从可读流中读取的数据能够直接被写入到可写流中。

当我们运行这段代码时,它会自动打开 input.txt 文件并逐块地将其中的内容写入 output.txt 文件中。由于我们使用了流,因此即使 input.txt 文件非常大,也不会占用过多的内存。