# 如何合并 Markdown 文件

> 分步教程：上传、排序、合并、预览并下载合并后的 Markdown 文件。

# 如何合并 Markdown 文件——分步教程

把多个 Markdown 文件合并成一个，看似简单：文件一多，章节顺序、分隔符、编码问题就会
接连出现。本教程以 MergeMarkdown 为例，带你走完“准备 → 上传排序 → 合并 → 预览 →
下载”的完整流程。所有处理都在浏览器本地完成，无需注册、无需安装。

## 第 1 步：准备好 .md 源文件

上传前花一分钟整理源文件。确认所有文件均为 UTF-8 编码——VS Code、Obsidian、Typora
等现代编辑器的默认值就是 UTF-8，但老旧 Windows 工具导出的文件可能是 GBK，合并后会
出现乱码。给文件起有意义的名字，如 `01-简介.md`、`02-安装.md`、`03-接口.md`，
先按文件名排好初始顺序，后续还可以微调。如果每个文件都以一级标题 `#` 开头，建议
把章节标题降为 `##`，让合并后的文档只有一个 H1，这样发布到 MkDocs、GitBook 或
GitHub 时目录结构最干净。

## 第 2 步：上传文件并拖拽排序

打开 MergeMarkdown，用文件选择器选中多个文件，或直接拖放到页面上。文件会显示为可
排序列表，拖动任意一项即可调整合并顺序——预览和最终下载严格遵循这个可见顺序，所见
即所得。随时可以追加新文件，新文件会被加到列表末尾，再拖到合适位置即可。全程无需
注册、不用排队，文件也不会上传到任何服务器。

## 第 3 步：设置文件之间的分隔方式

为避免章节首尾粘连，工具会在每两个文件之间插入分隔符。默认是水平分割线（独占一行的
`---`），在所有 Markdown 渲染器中都能显示为清晰的分隔线；想要更紧凑也可以换成
空行。建议每个源文件末尾保留恰好一个换行符，防止上一章的末行与下一章的标题连在一起。
如果源文件带有 `---` 包裹的 front-matter，先删除或转换掉，因为只有第一段
front-matter 有意义，重复的元数据会让静态站点生成器困惑。

## 第 4 步：预览合并结果

实时预览会把合并后的 Markdown 按读者视角渲染出来：标题、列表、代码块、表格、链接
一目了然。重点检查三处：章节顺序、标题层级、代码围栏是否闭合（漏掉结尾的 ````
会吞掉后面所有内容）。注意：屏幕预览上限为 5MB，这是为了保持页面流畅，仅影响预览
窗格；合并与下载始终处理完整内容，大文档可以放心使用。

## 第 5 步：下载或复制结果

预览无误后，一键下载合并好的文件，或复制到剪贴板直接粘贴到编辑器、Wiki、CMS 中。
建议文件名带上日期或项目名，例如 `docs-merged-2026-09-08.md`，避免覆盖历史版本。
由于全程本地处理，不需要在服务器上删除任何东西，也没有会过期的会话——你的文件从
未离开过浏览器。

## 检查清单

- 全部 UTF-8 编码，文件名有序且有意义。
- 下载前已在文件列表中确认排序。
- 全文只有一个 H1，章节使用 H2 及以下。
- 章节之间分隔符（`---` 或空行）已确认。
- 代码围栏配对无误，预览从头到尾看过一遍。

## FAQ

### 合并 Markdown 文件需要安装软件或注册账号吗？

不需要。MergeMarkdown 完全在浏览器中运行——打开页面、上传 .md 文件、排序、预览、下载即可。没有账号、没有安装、不用排队。

### 在线合并时，我的文件会被上传到服务器吗？

不会。合并、排序、预览全部通过 JavaScript 在浏览器本地完成，文件从不离开你的设备，私人笔记和内部文档也可以放心使用。

### 5MB 预览上限是什么意思？

屏幕上的渲染预览上限为 5MB，是为了保持页面流畅。该限制只影响预览窗格，合并与下载始终处理文件的完整内容。

### 怎样让合并后的标题层级保持干净？

全文只保留一个 H1（文档标题），合并前把章节标题降为 H2 及以下；每个源文件末尾保留一个换行符，章节之间用 --- 分隔，标题就不会粘在一起。

