CSV 一打开,0007 变成了 7;“A区,东侧”又被拆成两列。遇到这种情况,不要让 AI 把丢掉的零猜回来。本练习先让 AI 写一张导入检查单,再用 Calc 读一份带陷阱的假清单,确认内容没有被自动改写。
准备与费用:电脑、可保存 UTF-8 纯文本的编辑器、免费开源 LibreOffice Calc,以及已有的 AI 文本工具。无需编程、付费插件或 API。AI 的账户与额度按你使用的服务为准;练习只用下方虚构库存,真实客户或订单数据先不要上传。LibreOffice 来源与费用说明见官网。
1. 留住原件,再声明四列的意思
将下面内容保存为 UTF-8 的 parts-source.csv,另复制一份 parts-test.csv 用于练习。不要把代码块外框或解释文字存进去。四列依次是编号、零件名、位置、备注;编号是标签,不能拿来相加,空备注也不能擅自补成“无”。
id,part,location,note 0007,螺钉,"A区,东侧","标记""朝上""" 0012,垫圈,B区, 0100,支架,C区,一件
它包含3条记录和1行表头,每条都是4个字段。首条位置里的逗号属于同一个字段;备注里的两对相邻双引号,读取后应成为标记中的普通双引号。第二条最后一个字段为空,行末逗号用于分隔这个空字段,不代表缺了一条记录。
2. 让 AI 出导入方案,不让它重写源文件
请只为下面的合成CSV写导入检查单,不修改或“修复”数据。 工具:LibreOffice Calc。编码UTF-8,逗号分隔,双引号为文本分隔符,有表头。 四列id/part/location/note,本练习全部按文本导入;id必须保留前导零,空备注保持为空。 输出:预览应有几列、表头以外几条记录;每条记录解析后的4个值;需要指定的列类型;最容易错的3处;验收失败时应返回哪一步。 不要建议用普通“按逗号拆分”,不要编造软件实测结果。若源文件格式有歧义,指出位置并停止,不猜内容。 [粘贴上面的CSV]
先审 AI 的解析表:第1条 id 必须是文本“0007”,location 是“A区,东侧”,note 是“标记"朝上"”;第2条 note 为空。它若已经拆成5列或把编号改短,别继续照做。
3. 在导入预览里明确选择,不依赖自动猜测
- 在 Calc 通过“文件 → 打开”选择 parts-test.csv;需要时指定文件类型为 Text CSV(文本 CSV),显示文本导入窗口。
- 选择 UTF-8 字符集,只启用逗号分隔,文本分隔符设为半角双引号。关闭“合并分隔符”,以免空字段被合并。
- 在预览区逐列点选,将四列的 Column type(列类型)设为 Text(文本)。不要只给单元格设四位数字显示格式;那可能只是把数值7显示为0007,并未保住原始文本身份。
- 检查预览仍为四列,含逗号的位置没有裂开。为避免本练习无关的自动解释,关闭特殊数字、科学计数法检测;若有 Evaluate formulas(计算公式)选项,也关闭。本例没有公式。
- 确认后再导入。另存为 parts-checked.ods,不覆盖 CSV 原件;关闭并重新打开 ODS,再核对一次。
Calc 官方文本导入帮助明确区分分隔符、列类型和数字检测:仅关闭“检测特殊数字”仍可能转换普通数字,保留前导零应直接把对应列设为 Text。如果窗口没有出现,在打开文件流程中找“编辑筛选器设置”,不同界面译名可能略有区别。
4. 用五个检查点判定结果
- 总共4列、表头之外3行;行顺序不变。
- 三个编号逐字符为0007、0012、0100。选中单元格查看输入行,不能只相信显示宽度。
- 首条位置仍是一个单元格,逗号保留;首条备注只显示一对普通双引号。
- 第二条备注仍空白,后续字段没有向左错位。
- 重新打开ODS后,上述结果仍一致;CSV原件还在。
乱码时先回到字符集选择;裂列时检查分隔符和引号,不在结果表里手工挪格掩盖问题;前导零已经丢失时,放弃这次导入,从原 CSV 重新按文本导入。没有原件就不能确定该补几个零。若以后要交付 CSV,还需重新导出并让接收方按约定验证,因为 CSV 本身不保存电子表格的列类型。可对照官方 CSV 打开与保存说明,不要把 ODS 保存成功当作接收方已经正确读入。
如果原始资料还在截图里,可先按用 AI 把截图转成表格:保留编号、空白和原始数字提取并对照原图校验,再做本文的导入检查;正确导入不能弥补识别时已经丢失的字符。
资料核对日期:2026年10月28日。样本是原创合成数据,已用本地 CSV 解析器核对字段值,不是 Calc 图形界面实测。引号规则参考RFC 4180 第2节;它记录常见 CSV 格式,并不意味着所有软件都自动采用同一编码和导入选项。