# combined-stream 中文文档

规范地址：https://npmcn.com/package/combined-stream/

版本：1\.0\.8
npm 元数据更新时间：2022-06-13T06:33:58.025Z
中文译文更新时间：2026-11-05T14:37:11.898Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/combined-stream
原文对照：https://npmcn.com/package/combined-stream/?lang=original
项目主页：https://github.com/felixge/node-combined-stream
源码仓库：https://github.com/felixge/node-combined-stream

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：11.5 kB，5 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- Node.js 要求：\>= 0\.8
- 运行依赖：1 个
- 首次发布：2011-05-24T06:36:14.531Z
- 最新版本发布：2019-05-12T17:49:45.337Z
- 近 30 天下载量：556343644（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：18（近 12 个月 0 个）

## 中文简介

一条溪流逐一流出多条其他溪流.

## 安装

```sh
npm install combined-stream
```

也可以使用：`pnpm add combined-stream`、`yarn add combined-stream`、`bun add combined-stream`

## README

# 组合-流

一条溪流逐一流出多条其他溪流.

**编号** 现 `combined-stream` 只使用流版本 1 。 目前正在努力将这个库切换为流 第2版. 欢迎任何帮助。 ) 同时,您可以探索提供流2支持的其他库,这些库或多或少与流2兼容 `combined-stream`。 。 。 .

-   [组合-流2](https://www.npmjs.com/package/combined-stream2): 为组合相流模块提供可兼容的滴入相流2相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相.
    
-   [多流线](https://www.npmjs.com/package/multistream):流出相继多出其他流.
    

## 安装

```bash
npm install combined-stream
```

## 使用量

以下是一个简单的例子,说明如何使用组合-流来组合 将两个文件合并为一个文件:

```javascript
var CombinedStream = require('combined-stream');
var fs = require('fs');

var combinedStream = CombinedStream.create();
combinedStream.append(fs.createReadStream('file1.txt'));
combinedStream.append(fs.createReadStream('file2.txt'));

combinedStream.pipe(fs.createWriteStream('combined.txt'));
```

虽然上面的例子很有效,但它会暂停所有源流直到 它们是需要的。 如果你不想发生,你可以设置 `pauseStreams` 改为 `false`数字 :

```javascript
var CombinedStream = require('combined-stream');
var fs = require('fs');

var combinedStream = CombinedStream.create({pauseStreams: false});
combinedStream.append(fs.createReadStream('file1.txt'));
combinedStream.append(fs.createReadStream('file2.txt'));

combinedStream.pipe(fs.createWriteStream('combined.txt'));
```

然而,如果你还没有所有的源流, 或者你不希望 立即为他们分配资源(文件描述符、内存等)? 那么,如果那样的话,你可以提供 简单的召回,供应溪流 呼唤 `next()` 函数 :

```javascript
var CombinedStream = require('combined-stream');
var fs = require('fs');

var combinedStream = CombinedStream.create();
combinedStream.append(function(next) {
  next(fs.createReadStream('file1.txt'));
});
combinedStream.append(function(next) {
  next(fs.createReadStream('file2.txt'));
});

combinedStream.pipe(fs.createWriteStream('combined.txt'));
```

## API 密码

### 组合Stream.create(\[选项\])

返回新的合并流对象。 可用的选项有:

-   `maxDataSize`
-   `pauseStreams`

现将这些方案的效果说明如下.

### 合并为Stream.pause-Streams= `true`

是否对下方流施加回压 。 如果设置为 `false`, (中文(简体) ), 底部的溪流永远不会被暂停。 如果设置为 `true`,则 后面的流会在附件之后立即被暂停,以及何时 `delayedStream.pipe()` 想要减速.

### 合并 Stream.maxDataSize= `2 * 1024 * 1024`

用于所有源流缓冲的最大字节(或字符). 如果超过这个值, `combinedStream` 发出一个 `'error'` 活动.

### 合并 Stream.dataSize= `0`

目前缓冲的字节( 或字符) 数量 `combinedStream`。 。 。 .

### 组合Stream.append(流)

附加给定的 `stream` 转到合并的Stream 对象。 若为 `pauseStreams` 实值 设定为“事实上,这一流也将立即被暂停.

`streams` 也可以是一个需要一个参数的函数 `next`。 。 。 . `next` 是一个必须引用的函数,以便提供 `next` 流,见 上文的例子.

不管怎么样 `stream` 附加,组合-流总是附加 `'error'` 倾听者,所以你不必手动做到这一点.

特例: `stream` 也可以是弦或缓冲.

### 合并Stream.write(数据)

你不应该叫这个, `combinedStream` 照顾管道 所附 为你而来.

### 组合 Stream.resume ()

原因 `combinedStream` 开始排出它管理的溪流。 函数是 并发出 `'resume'` 事件每次通常都会发生 目前排出的水流.

### 合并Stream.pause();

若为 `combinedStream.pauseStreams` 设置为 `false`这没什么用. 否则a `'pause'` 事件被释放,它会流到 正在排出,所以你可以用它施加后压.

### 合并Stream.end();

设定 `combinedStream.writable` 假的,发出一个 `'end'` 事件,并删除 所有从队列流出.

### 合并Stream.dstroy();

与 `combinedStream.end()`除非它发出一个 `'close'` 事件代替 `'end'`。 。 。 .

## 许可证

联合流由麻省理工学院颁发许可证.

## 常见问题

### combined-stream 是什么？

一条溪流逐一流出多条其他溪流\.

### 如何安装 combined-stream？

在项目目录运行 npm install combined-stream，或使用 pnpm add / yarn add / bun add。

### combined-stream 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/combined-stream 是否存在。

### combined-stream 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### combined-stream 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>= 0\.8。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### combined-stream 可以商用吗？

combined-stream 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### combined-stream 的下载量有多少？

根据 npm 官方下载统计，combined-stream 在 2026/10/07 – 2026/11/05 这 30 天内被下载 556,343,644 次，日均约 18,544,788 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### combined-stream 还在维护吗？

最新版本 1\.0\.8 发布于 2019/05/13（7 年前）；至今共发布 18 个版本，其中过去 12 个月发布了 0 个；首次发布于 2011/05/24。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

