📊 CSV ↔ JSON
CSV 与 JSON 双向转换,支持自定义分隔符——在浏览器中完成
✓ 永久免费 · ✓ 无需注册 · ✓ 文件不上传 · ✓ 离线可用
🔒 你的数据绝不会离开你的设备。 所有处理都通过 PapaParse(客户端 CSV 解析器) 在浏览器本地完成。无上传、无服务器、无追踪。
功能特点
- 双向转换 — CSV 转 JSON 和 JSON 转 CSV 双向支持。
- 自动识别分隔符 — 从数据里识别逗号、分号、制表符或竖线(从 Excel 或 Google 表格复制出来的是制表符分隔),也可以自己选。
- 数据统计 — 显示行数和列数,方便快速了解数据规模。
- 一键操作 — 复制结果或下载为文件,操作简单高效。
使用方法
- 选择转换方向 — 选择 CSV → JSON 或 JSON → CSV。
- 输入数据 — 粘贴数据并选择分隔符(如适用),也可点击示例。
- 复制或下载 — 复制转换结果或下载为文件。
使用场景
- 将 Excel 导出的 CSV 转为 JSON 用于 API 开发
- 将 JSON API 数据转为 CSV 用于表格分析
- 数据迁移时在两种格式间转换
- 准备数据可视化所需的格式
常见问题
能处理带引号的字段吗?
能。带引号的字段可以包含分隔符、换行和成对的引号("")。引号没有闭合时,会告诉你它在第几行开始,而不是把后面的内容全吞进一个单元格。
输出的是什么 JSON 格式?
一个对象数组,每一行数据一个对象,以表头行为键。重复的列名会加编号(name、name_2),空列名变成 column_N,超出表头的字段保存为 column_N——不会悄悄丢掉任何东西。空行会被跳过。
为什么 JSON 里的数字是字符串?
CSV 没有类型,所以默认每个值都按原样保留为文本。勾选“数字和 true/false 输出为 JSON 值”后,30 会变成 30、true 变成 true;007、+1、1,234 和超过 15 位的数字仍是文本,邮编和 ID 不会被改坏。
数据全挤在一列里,怎么回事?
文件用的是别的分隔符。“自动”会根据前几行识别逗号、分号、制表符和竖线;如果猜错了,点一下正确的分隔符,结果会重新生成。
可以直接打开文件吗?
可以——点“打开文件”或把 .csv、.tsv、.json 文件拖到输入框里。文件在浏览器里读取,不会上传。拖入 .json 文件会自动切换到 JSON → CSV。
来自 Milo 🐨 的笔记
说件丢人的事:我从 Google 表格直接复制了一张表粘进来,结果只得到一列,制表符还混在键里——而且 CSV 里列名重复时第一列会悄悄消失,一行里多出来的字段直接没了,没闭合的引号会把后面整个文件吞进一个单元格。现在分隔符会自动识别(逗号、分号、制表符或竖线),重复和空的列名会加编号而不是互相覆盖,多出的字段会保留,空行会跳过,坏掉的引号会告诉你在第几行。还加了“打开文件”按钮(也可以把 .csv/.json 拖到输入框),以及把数字和 true/false 变成真正 JSON 值的开关——像 007 这样的邮编和很长的 ID 会故意保留为文本。
相关教程
- 📖 如何把 CSV 转成 JSON(以及转回去) — 在浏览器里把 CSV 转成 JSON——一个以表头行作为键的对象数组——再转回去。外加引号、分隔符和类型转换的那些坑。
相关工具
- ⚙️ YAML ↔ JSON — YAML 与 JSON 双向转换,实时验证——在浏览器中完成
- { } JSON 格式化与美化 — JSON 格式化、压缩与验证——在浏览器中即时完成
- 📝 Markdown ↔ HTML — Markdown 与 HTML 双向转换,实时预览——在浏览器中完成
💬 Bug、点子,或者就想打个招呼? 告诉 Milo 🐨 · [email protected]