CSV 与 JSON 整理:字段、类型和往返转换检查
学习提取 CSV 列、排序筛选与 JSON 转换,检查表头、字符串、数字和嵌套结构,避免格式转换后数据含义发生变化。
先检查表头,再调整数据
CSV 提取列使用原始列名,例如 name,age。工具按填写的顺序输出列,未选中的列会被排除。重复表头和不一致的列数会被拒绝。
合并 CSV 时可粘贴两份表格,或按顺序选择多份文件;每份表头的名称和顺序必须一致。结果只保留一行表头并追加全部记录,不会按键关联或自动去重。
JSON 扁平化与还原现共用一个工作区,通过“处理任务”选择方向。Markdown 表格转换也在同一入口提供 CSV → Markdown、Markdown → CSV 和 JSON → Markdown。
排序与筛选需要明确类型
数值排序会检查整列是否为有效数字。编号 0012 若需要保持字符串语义,应选择文本排序。筛选提供等于、不等于和包含三种规则。
列统计忽略空白单元格,并单独报告空值数;非空但无法转换为数值的单元格会导致错误,而不是被悄悄跳过。
JSON 路径保留容器信息
扁平化结果分为 containers 和 values。容器映射记录数组与对象的区别,也能保留空容器;值路径遵循 JSON Pointer,键中的 / 和 ~ 会分别转义。
还原工具只接受这一结构。普通的 a.b 路径对象不能直接输入,因为键本身可能包含点号,且数字键不一定代表数组下标。
选择最终格式
README 和说明文档可以使用 Markdown 表格。管道符会转义,CSV 单元格换行会输出为 <br>。从 Markdown 反向转换时,内联 HTML 保留原样,不保证格式完全往返。
CSV 整理工具保留单元格原文,不主动修改以 =、+、-、@ 开头的值。导入会执行公式的表格软件前,请按安全 CSV 文档检查这些单元格。
用一条参照记录贯穿整个处理流程
选择一行包含带引号的逗号、前导零编号和空值的数据。提取列、排序和转换时始终用它对照,更容易发现仅用普通数字样例无法暴露的解析和类型变化。
处理嵌套 JSON 时,先区分目标是便于人阅读,还是之后能够还原。Markdown 表格适合文档展示,但不能表达所有嵌套结构;需要重建时,扁平化与还原工具使用包含 containers 和 values 的信封结构。
| 操作 | 需要保留 | 验证内容 |
|---|---|---|
| 提取列 | 所需列顺序 | 表头及一条代表性记录 |
| 按列排序 | 完整记录 | 同一行字段一起移动 |
| 合并 CSV | 兼容表头 | 记录数和列含义 |
| CSV 转 JSON | 字符串标识符 | 前导零及空值 |
id,city,note
00123,"Portland, OR",
00456,Taipei,review完成前的检查清单
- 将列映射为对象键前,检查表头是否唯一。
- 比较筛选前后的记录数量。
- 编号的字面形式重要时,按字符串保存。
- 交付完整文件前,先在目标系统试导入样例。
参考资料
- RFC 4180:CSV 格式
提供常见分隔符与引号规则的参考;电子表格导入行为可能不同。
- RFC 6901:JSON Pointer
定义指针路径和转义规则,不包含 Neatbo 的 containers/values 信封结构。