CSV 转 Markdown 表格

粘贴 CSV,得到 GitHub 风格的 Markdown 表格。表头自动识别,对齐方式可配置。在浏览器中运行 — 无需上传。

  1. 将 CSV 粘贴到左侧文本区。
  2. 选择列对齐方式(默认保留渲染器的选择)。
  3. 点击「转换」进行渲染。结果显示在右侧。
  4. 复制或下载 Markdown — 粘贴到任意支持 GFM 的目标。
它能做什么?

使用 PapaParse 解析 CSV,并输出为 GitHub 风格的 Markdown 表格 — 表头行、可选列对齐的分隔行,然后是数据行。单元格内的竖线和换行会被转义或替换,以保持 GFM 表格有效。单元格内部的空白会被保留。

常见陷阱

GFM 表格有几条格式规则会让初次使用者意外。

  • 单元格内的竖线。 单元格中的字面量 `|` 会破坏 GFM 表格解析。输出会将其转义为 `\|` — 大多数渲染器接受,少数旧工具可能不行。
  • 单元格内的换行。 GFM 表格不支持多行单元格。嵌入的换行会被替换为单个空格;极端情况可能需要后处理。
  • 空单元格。 空单元格仍然渲染为空(`| |`)。一些渲染器会把连续的 `|`-`|` 压缩为更窄的列 — 这是渲染器的选择,不是 CSV 端的问题。
  • 行长度不一致。 比表头短的行会在末尾补空单元格;比表头长的行会被静默截断。两种情况都会在状态行产生解析器警告。
  • 丢失前导零的数字 ID。 本工具关闭了动态类型化 — `007` 在输出中仍是 `007`。CSV 解析器会原样保留源字符串。
  • 错误的分隔符。 PapaParse 自动检测逗号、Tab、分号与竖线。若表格看起来是一个巨大的列,说明分隔符未被检测到 — 请从已知正常的源粘贴或预处理为逗号。
常见问题

支持制表符分隔的输入吗?

支持 — PapaParse 自动检测 TSV、分号、竖线和逗号。Markdown 输出始终使用竖线分隔(GFM 标准)。

可以得到对齐(美化)的输出吗?

不可以 — 输出使用单空格填充以保持紧凑。多数编辑器和 Markdown 渲染器无论源文件中的列对齐如何,处理表格的方式都是一样的。如果需要源文件视觉对齐,请使用编辑器的 Markdown 表格格式化插件。

为什么对齐下拉列表会同时改变所有列?

按列对齐需要比 v1 更复杂的 UI。当前控件对所有列应用相同的对齐。如需按列对齐,可复制结果后手动编辑分隔行。

可以处理多大的 CSV?

约 10 MB 后文本框会变慢。Markdown 渲染中很少出现非常大的表 — 通常会分页而不是滚动。

我的 CSV 会被上传吗?

不会。一切都在你的浏览器里运行 — 数据由本页 JavaScript 解析,从不发送到任何服务器。

为什么我的数字显示为文本?

Markdown 表格是纯文本 — 没有数字类型。输出始终是字符串编码。Markdown 渲染器可以通过 CSS 样式化数字,但源文件就是文本。