CSV JSON 转换器

即时进行 CSV 与 JSON 格式互转。支持引号字段,自动识别表头。免费在线工具,在浏览器中处理。

  • 在浏览器中处理
  • 数据不离开你的设备
  • 免费 · 无需注册
CSV → JSON 时转换未加引号的数字、true、false 和 null。带引号的值、前导零值和超出安全范围的整数保持为文本。更改此选项会重新转换当前 CSV。
CSV → JSON 时,将未加引号的空字段写成 null,而非空字符串。带引号的空字段仍是字符串。更改此选项会重新转换当前 CSV。
清空两个面板、状态和等待执行的转换,保留选项。焦点在工具内时,Ctrl+L(Mac 为 ⌘+L)也会清空。
粘贴以逗号分隔、带表头且至少有一行数据的 CSV。停止输入 0.3 秒后,JSON 会自动更新。支持引号字段中的逗号、换行和双写引号。
复制 CSV 面板内当前的全部文本,包括您编辑的内容。面板为空时无法复制。
粘贴非空的 JSON 对象数组。停止输入 0.3 秒后,CSV 会自动更新。嵌套对象展开为点路径列;数组和空对象写成 JSON 文本。
复制 JSON 面板内当前的全部文本,包括您编辑的内容。面板为空时无法复制。
示例、说明与常见问题 带实际输出的示例、与同类工具的差别,以及常见问题。

转换示例

简单表格

输入 CSV:

name,age,city
Alice,30,London
Bob,25,Paris

输出 JSON 包含每行对应的 name、age、city 字段的对象。

含逗号的引号字段

输入 CSV:

product,description,price
Widget,“Small, round widget”,9.99
Gadget,“Includes ""turbo"" mode”,24.50

description 字段包含逗号和转义引号——均可正确处理。

JSON 转回 CSV

将 JSON 输出粘贴到 JSON 面板,停止输入 0.3 秒后会自动转换为 CSV。

支持的 CSV 格式

本工具遵循 RFC 4180 标准。字段以逗号分隔。 若字段中包含逗号、换行符或双引号,则必须用双引号包裹。 引号字段内的双引号以两个连续双引号("")转义。 第一行始终作为列标题解析。

边界情况:本工具怎么处理

空字段。 下面这份 CSV 里,Bob 没有 email,第 3 行没有 name:

id,name,email
1,Alice,alice@example.com
2,Bob,
3,,charlie@example.com

默认情况下空字段转成 ""。勾选「空字段 → null」则转成 null:

[
  { "id": 1, "name": "Alice", "email": "alice@example.com" },
  { "id": 2, "name": "Bob", "email": null },
  { "id": 3, "name": null, "email": "charlie@example.com" }
]

类型推断。 勾选「推断数字和布尔值」(默认勾选)时,未加引号的 true、false、null(不区分大小写)转成 JSON 字面量,数字转成 JSON 数字。有三类值保持字符串,避免信息丢失:加了引号的字段("42")、以 0 开头的值(007、0123),以及超出 JavaScript 安全整数范围(大于 2^53 − 1)的整数,比如很长的订单号。

表头。 第一行固定当作表头。没有表头的 CSV 需要先补一行表头。两列同名时,后一列会覆盖前一列,请先改名。超出表头列数的字段会被丢弃,缺少的尾部字段按空值处理。

分隔符。 只识别逗号。分号或制表符分隔的文件请先转成逗号分隔。

JSON → CSV。 输入必须是对象数组。列取所有对象里出现过的键,按首次出现的顺序排列;某行没有这个键就留空。嵌套对象展开成 user.name 这样的点路径列(与 pandas json_normalize 的列名规则相同),数组和空对象写成 JSON 文本,null 写成空字段:

[
  { "id": 1, "user": { "name": "Alice", "city": "London" }, "tags": ["admin", "ops"], "manager": null },
  { "id": 2, "user": { "name": "Bob" } }
]
id,user.name,user.city,tags,manager
1,Alice,London,"[""admin"",""ops""]",
2,Bob,,,

把这份 CSV 再转回 JSON 时不会还原嵌套:user.name 仍是一个扁平的键,数组仍是字符串。

FAQ

支持什么 CSV 格式?

标准 RFC 4180 CSV:逗号分隔值,支持双引号转义。引号字段中可包含逗号、换行符和转义引号。

表头如何处理?

CSV 的第一行始终作为表头。之后每一行都会转换为以表头为键的 JSON 对象。

有文件大小限制吗?

没有硬性限制——所有处理都在浏览器中完成。实际使用中,几 MB 以内的文件可以即时转换;更大的文件取决于设备性能。

数据会发送到服务器吗?

不会。所有转换在浏览器中通过 JavaScript 运行,数据不会离开您的设备。