LOCALSHIFT 使用指南
CSV 转 JSON 时如何保留前导零
发布与审核日期 · 基于 LocalShift 当前实现
从源数据导出开始,就应将标识符字段保留为字符串。LocalShift 的 CSV 转 JSON 工具将单元格保留为字符串,因此 00123 会变成 "00123",而非数值 123。
标识符不等于数值
邮政编码、客户编号或产品代码即使只含数字,也不一定适合按数值计算。前导零可能有实际意义。类似日期的值也可能需要保留原始文本,而非转换为日期。
从原始 CSV 开始,必要时用文本编辑器打开检查。如果电子表格已经将 00123 保存为 123,转换工具无法可靠地推断丢失的数字。
试用一个短标识符和一个长标识符
将此输入粘贴到“CSV 转 JSON”,保留表头并选择逗号分隔符。输出会将两个标识符保留为带引号的字符串,其中一个标识符超过了常见 JavaScript 数值的安全整数精度。
id,name
00123,Alex
9007199254740993,Sam预期值(空白格式可能不同)
[
{"id": "00123", "name": "Alex"},
{"id": "9007199254740993", "name": "Sam"}
]在后续处理中保留正确类型
本工具会将所有 CSV 字段保留为字符串,而不仅仅是标识符。例如,false 会保留为 "false",空单元格会变成空字符串,而非 null。如果 API 需要数值,请先检查字段规则,再在后续处理中转换该字段。
不要自动将所有看起来像数字的字段转为数值。JavaScript 无法精确表示所有大整数。使用反向转换前,请将 JSON 中的长标识符用引号包裹。
留意电子表格的导入步骤
CSV 不保存列的数据类型。即使文件生成正确,其他应用打开时仍可能重新解释数据。请将标识符列按“文本”类型导入,不要依赖自动识别。
UTF-8 BOM 用于帮助识别编码,不是数据类型声明。“电子表格安全模式”处理的是某些类似公式的文本,不负责保留前导零。请分别检查文件文本和接收软件的导入设置。
参考资料
以下为通用格式参考资料;LocalShift 的具体行为另有说明和测试。