CSV转Markdown表格转换器

将CSV文件转换为Markdown表格语法(`| col1 | col2 |`)。可指定分隔符、是否将首行作为表头,以及列对齐方式(左对齐、居中、右对齐)。转换结果可复制或下载。转换完全在浏览器中进行,不会将数据发送到服务器。


分隔符
将首行作为表头
列对齐方式


            
            已复制!
            
          

输入CSV数据后,这里会显示生成的Markdown表格。

CSV行与Markdown表格的对应关系

CSV的一行 name,age,city
转换后的Markdown语法 | name | age | city |

当首行作为表头使用时,第1行为表头行,第2行为表示对齐方式的分隔行(---),从第3行开始为各数据行。

Tips

  • 单元格中包含竖线(|)时会自动转义为 \| ,以防止被误认为是列分隔符。
  • 用引号括起的多行单元格中的换行会被替换为一个半角空格,因为Markdown表格的每一行必须在物理上占一行。
  • 选择"左对齐"、"居中"或"右对齐"后,分隔行中会插入 `:---`、`:---:` 或 `---:`,使GitHub等渲染器按预期的对齐方式显示。
  • 搭配姊妹工具"CSV转JSON"和"CSV转SQL"使用,可以将同一份CSV转换为按需选择的三种输出格式。

常见问题

这是一种用竖线(|)分隔单元格并排列在一行、且紧跟表头行之后插入由 `---` 组成的分隔行、从而被识别为表格的记法。GitHub的README以及Qiita、Zenn等许多Markdown渲染器都支持这种语法。

通过在分隔行的连字符前后加上冒号(:)来指定。`:---` 表示左对齐,`:---:` 表示居中,`---:` 表示右对齐;本工具只需选择对齐方式即可自动插入相应语法。

可以。用双引号括起的单元格内的逗号不会被误认为列分隔符,换行会被转换为半角空格,因此从Excel等复制的复杂CSV也能在不破坏表格格式的情况下正确转换。

不会。转换处理全部在浏览器内的JavaScript中完成,输入的CSV内容不会被发送到任何服务器。
ツールくん

闲话 ― 为什么Markdown表格仅靠竖线和连字符就能表达

Markdown由John Gruber和Aaron Swartz于2004年提出,是一种轻量级标记语言,其设计理念的核心是"即使以纯文本形式阅读也能理解含义"。表格语法也不例外:由于仅用竖线和连字符来表现表格线,因此不像HTML的`

`标签那样需要用开始和结束标签包裹,仅凭转换前的源码就能大致想象出表格的形状。

Markdown的表格语法最初并不包含在John Gruber本人制定的原始规范中,而是后来由PHP Markdown Extra以及更具影响力的GitHub Flavored Markdown(GFM)作为扩展功能加入的。因此不同实现之间在细节行为(例如列数不一致时的处理方式)上会存在细微差异,GitHub、GitLab等主流平台大体上都遵循GFM规范。

希望将电子表格或数据库查询结果直接粘贴到文档中的需求,在撰写README、Issue以及技术博客时经常出现。手动敲出竖线和分隔行相当繁琐,因此能够一键从CSV转换的工具,已成为使用Markdown编写文档的开发者的常见预处理步骤。