⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

Node.js 流式处理

学习如何使用 Node.js Stream 处理大数据,实现高效的数据流读写与转换。 · 难度:入门 · +15XP

什么是 Stream?

Stream(流)是 Node.js 中处理流式数据的抽象接口,它允许你以小块的方式读取或写入数据,而不必将整个数据加载到内存中。这对于处理大文件、网络响应或实时数据非常有用。

流的四种类型

类型说明示例
Readable可读流fs.createReadStream
Writable可写流fs.createWriteStream
Transform转换流zlib.createGzip
Duplex双工流net.Socket

代码示例:文件复制

const fs = require('fs');

const readStream = fs.createReadStream('source.txt'); const writeStream = fs.createWriteStream('destination.txt');

readStream.pipe(writeStream);

readStream.on('end', () => { console.log('复制完成'); });

pipe() 方法自动处理背压(backpressure),确保数据不会被淹没。

练习提示

尝试修改上面的代码,使用 zlib.createGzip() 在管道中添加压缩步骤,将文件压缩后写入新文件。注意需要引入 zlib 模块。

Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 135 篇
0 完成
🔥 0