只需三步将 CSV 转换为 JSON
- 添加 CSV 数据。 粘贴文本或选择支持的 CSV 或分隔文件。
- 确认解析器设置。 检查分隔符、表头行、空值处理行为和类型检测。
- 预览并导出。 检查解析后的行,然后复制或下载格式化后的 JSON。
检测 CSV 结构
分隔符
该工具会尝试检测常见的分隔符:逗号、分号、制表符和竖线。检测结果仍可编辑。如果文件在引号文本内包含许多逗号,可能会干扰自动检测,且区域性导出的文件通常使用分号。
预览会在转换前显示选定的分隔符和检测到的列数。
表头行
当首行包含字段名称时,其后的每一行都可以变成一个 JSON 对象。
id,name,status
1,Ada,active
2,Lin,paused
建议的输出:
[
{"id": "1", "name": "Ada", "status": "active"},
{"id": "2", "name": "Lin", "status": "paused"}
]
如果不存在表头,您可以输出数组的数组、生成类似于 column_1 的键,或输入自定义字段名称。
正确解析带引号的字段
当正确使用引号时,CSV 字段可以包含分隔符、换行符或字面引号。
name,notes
"Ada","Uses commas, quotes, and
multiple lines"
解析器将整个 notes 值保留在一个字段中,并解码引号值内部的转义引号对。
选择 JSON 输出形状
对象数组
使用表头行作为对象键。这是 API、应用程序导入和大多数开发者工作流的默认设置。
数组的数组
将每一行保留为按位置排列的数组。当 CSV 没有表头或重复的表头不应成为对象键时,这非常有用。
包装对象
可选的根键可以产生:
{
"records": [
{"id": "1", "name": "Ada"}
]
}
必须显式输入根键。工具不会凭空创造具有语义的集合名称。
控制数据类型
CSV 没有通用的类型元数据。最安全的默认设置是将所有单元格值保留为字符串。
- 将所有值保留为字符串 — 默认设置,这样像
00123这样的标识符就能保留其前导零。 - 检测数字和布尔值 — 将数字文本转换为 JSON 数字,将
true/false转换为布尔值。 - 空单元格处理 — 保留为空字符串或输出
null。
从表头重构嵌套对象
可选的点路径模式可将类似于 address.city 和 address.country 的表头转换为嵌套的 JSON。
{
"address": {
"city": "London",
"country": "UK"
}
}
此模式默认处于禁用状态,因为字面列名中可能包含句点。用户可以控制点是否表示嵌套。
导出前预览解析结果
预览显示检测到的分隔符、表头状态、行列计数、异常行警告、重复或空白表头警告、小型源表预览以及格式化后的 JSON 输出。
常见的 CSV 转 JSON 问题
包含逗号的名称创建了多余的字段
该字段在源 CSV 中必须使用引号括起来。 解析器尊重带引号的分隔符,并会报告格式错误的引号包裹。
各行包含的列数不同
文件不规则或选错了分隔符。 输出将显示哪些行存在差异;默认情况下,缺失的值会被填充,多余的值会被保留。
前导零消失
对标识符列禁用数字类型检测。 像 00123 这样的值通常是 ID,而不是数字 123。
首行数据变成了属性名称
关闭“首行为表头”。 使用数组输出或提供自定义键。
空单元格应变为 null
在转换前选择空值策略。 预览会区分 "" 和 null。
CSV 转 JSON 常见问题
转换器能处理值内部的逗号吗?
可以,只要该值正确使用了引号。 解析器会将带引号字段内部的分隔符视为内容。
它可以解析分号或制表符分隔的文件吗?
可以,只要检测到或选定了该分隔符。 选定的分隔符在选项面板中可见。
第一行必须是表头吗?
不需要。 您可以将第一行用作键、生成列名,或输出数组的数组。
数字会保持为数字吗?
仅当启用类型检测时才会如此。 对于标识符和带有前导零的值,将值保留为字符串更为安全。
带点的表头能创建嵌套的 JSON 吗?
可以,通过可选的嵌套键模式。 当句点是列名的字面部分时,请保持其禁用状态。
CSV 会被上传吗?
不会 — 粘贴的数据完全在您的浏览器中解析。 对于超过浏览器处理限制的文件,会提供可选的服务器备用方案,未经您的同意不会上传任何内容。