TSV 转 JSON
CSV 转 JSON 的预设方案
把制表符分隔的数据转换成 JSON。TSV 正是你直接从 Excel 或 Google Sheets 里复制一个区域再粘贴时得到的格式——不需要导出步骤,也没有值内部逗号带来的歧义。
- 文件永不离开你的设备
- 免费,无需注册
- 无水印
- 加载后可离线使用
如何CSV 转 JSON
- 1
粘贴你的 CSV
直接从电子表格粘贴,或者手动输入。
- 2
设置选项
选择分隔符,决定第一行是否是表头,以及是否推断类型。
- 3
复制 JSON
复制结果,或下载为 .json 文件。
为什么从电子表格直接粘贴出来的是制表符分隔,而不是逗号分隔
在 Excel 或 Google Sheets 里选中一个单元格区域并复制,默认放进剪贴板的是制表符分隔的数据,而不是逗号分隔的——这是一个刻意为之、也很实用的设计选择,因为它意味着一个真实出现在单元格值内部的逗号,从一开始就永远不会和列分隔符混淆。对绝大多数普通文本来说,根本不需要任何引号或转义处理,因为分隔符本身(一个制表符)几乎从来不会像逗号那样自然地出现在手动输入的电子表格内容里。
这正是为什么不经过明确的"导出为 CSV"这一步、直接从电子表格粘贴,产出的是 TSV 而不是 CSV——识别并正确解析这个制表符分隔符,正是让这个变体能够直接接受从 Sheets 或 Excel 粘贴的剪贴板内容、而无需中间导出步骤的原因。
即使没有逗号歧义,仍然需要引号感知的地方
消除逗号歧义问题并不能消除所有边界情况:一个被复制的单元格依然可能包含内部换行符——一条输入在同一个单元格里的多行备注或地址——电子表格应用在复制这个字段时,依然会像处理 CSV 一样用引号把它包裹起来。一个只正确处理了 TSV 制表符切分那一半、却没有同时兼顾内嵌换行符引号处理的解析器,即使完全不用担心逗号,依然会破坏这些特定的行。
常见问题
能处理带引号字段内部的逗号吗?
可以。解析器正确遵循 RFC 4180 规范:带引号的字段内部可以包含逗号、换行符和转义引号(写作 "")。按逗号直接切分的工具,恰恰会破坏这类数据,而且通常不会有任何报错。
类型推断会怎么处理前导零?
会原样保留。`007`、`+44` 以及超出 JavaScript 安全整数范围的值都会保持字符串形式,因为它们几乎总是 ID、电话号码或邮编——转换成数字会悄悄破坏数据。只有明确无歧义的数字、布尔值和 null 才会被转换。
重复的列名会怎样处理?
会被重命名成唯一的名称——第二个 `name` 列会变成 `name_2`——因为 JSON 对象里两个相同的键会互相悄悄覆盖。空白表头会依次变成 `column_1`、`column_2` 等等。
能直接转换 Excel 文件吗?
目前还不行——请先把它另存或导出成 CSV(在 Excel 和 Google Sheets 里都是"文件 → 另存为 → CSV")。注意欧洲地区安装的 Excel 通常使用分号作为分隔符;如果你的列出现合并错乱,切换一下分隔符选项。
我的数据会被上传吗?
不会。解析完全在你的浏览器里进行,这一点很重要,因为 CSV 导出文件通常正好携带着客户、财务或员工数据,这些都不该被粘贴进别人的服务器。