Node中的可读流和可写流实例代码分析
更新时间:2023-11-13可读流的实例代码分析
可读流是 Node.js Stream API 中最简单的一种流。可读流通常与管道式写入流(Writable Streams)配合使用,将数据从一段传递到另一段。
下面是一个可读流和可写流的配合示例,这个示例使用了 fs.createReadStream 方法来创建一个可读流,然后将可读流传递给可写流。
const fs = require('fs'); const readStream = fs.createReadStream('file.txt'); const writeStream = fs.createWriteStream('output.txt'); readStream.pipe(writeStream);
通过 fs.createReadStream 方法创建了一个可读流,并指定要读取的文件名为 file.txt。再通过 fs.createWriteStream 方法创建可写流并指定输出文件名为 output.txt。然后调用管道方法 pipe 来将 readStream 和 writeStream 管道接起来,使数据流动起来,实现了文件读取和写入的功能。
可写流的实例代码分析
可写流被用来向一个目的地(例如:文件,另一个进程,或者控制台)写入数据。下面是一个简单的示例,演示了如何创建一个可写流,并向其中写入数据。
const fs = require('fs'); const writeStream = fs.createWriteStream('output.txt'); writeStream.write('Hello World!\n'); writeStream.end();
这个示例中使用了 fs.createWriteStream 方法来创建一个可写流,并指定了输出文件名为 output.txt。writeStream.write 方法用于向可写流中写入数据,最后调用 writeStream.end 方法结束写入。
可读流和可写流的例子:
const fs = require('fs'); const readStream = fs.createReadStream('input.txt'); const writeStream = fs.createWriteStream('output.txt'); readStream.on('data', (chunk) => { writeStream.write(chunk); }); readStream.on('end', () => { writeStream.end(); });这个例子中,使用 fs.createReadStream 方法创建可读流,并指定读取的文件名为 input.txt。然后使用 fs.createWriteStream 方法创建可写流,并指定输出文件名为 output.txt。调用 readStream.on 方法来监听 data 和 end 事件,当读取到数据时,使用 writeStream.write 将数据写入可写流中,当读取结束时,则使用 writeStream.end 方法来结束写入。