跨地区 CSV · 字符编码转换
与海外分公司交换 CSV 时如何转换字符编码
以上海财务团队向欧洲共享服务中心交付客户主数据为例,先确认 ERP 的 GB18030 输出与对方要求的 UTF-8 BOM,再用 LocaCSV 转换。不能仅凭国家或语言判断编码。
业务场景:上海团队向马德里共享中心交付客户主数据
远川贸易有限公司的 ERP 文档写明导出为 GB18030、逗号分隔;马德里集团平台要求 UTF-8 BOM。这个选择来自发送端与接收端文档,而不是“中国用 GB18030、欧洲用 Windows-1252”的推断。
- 输入:GB18030、逗号分隔
- 输出:UTF-8 BOM、逗号分隔
- 金额为 CNY,日期为 YYYY-MM-DD,字段内容保持不变
| 字符编码 | 输入 CSV | 输出 CSV | 主要用途与确认事项 |
|---|---|---|---|
| UTF-8 | 自动检测或手动指定 | 选择带或不带 BOM | 新建多语言交换流程的优先候选;BOM 仍以接收系统规范为准。 |
| GB18030 | 手动指定 | 支持 | 简体中文旧系统的常见示例;不要只根据 GBK 名称推断。 |
| Big5 | 手动指定 | 支持 | 繁体中文旧系统的常见示例;使用少量文件测试企业自定义字符。 |
| Shift_JIS(CP932) | 自动检测或手动指定 | 支持 | 日本旧系统的常见示例;测试 CP932 特有字符。 |
| CP949 | 手动指定 | 支持 | 韩国旧系统的常见示例;不要把所有 EUC-KR 标注直接当作 CP949。 |
| Windows-1252 | 手动指定 | 支持 | 欧美旧系统的常见示例;确认 €、重音字符和引号。无法表示的字符不会被替换,而会停止处理。 |
| ISO-8859-1 | 手动指定 | 支持 | 仅用于明确要求 Latin-1 的旧系统;与 Windows-1252 不同,0x80~0x9F 会作为控制字符处理。 |
UTF-8
- 输入 CSV
- 自动检测或手动指定
- 输出 CSV
- 选择带或不带 BOM
- 主要用途与确认事项
- 新建多语言交换流程的优先候选;BOM 仍以接收系统规范为准。
GB18030
- 输入 CSV
- 手动指定
- 输出 CSV
- 支持
- 主要用途与确认事项
- 简体中文旧系统的常见示例;不要只根据 GBK 名称推断。
Big5
- 输入 CSV
- 手动指定
- 输出 CSV
- 支持
- 主要用途与确认事项
- 繁体中文旧系统的常见示例;使用少量文件测试企业自定义字符。
Shift_JIS(CP932)
- 输入 CSV
- 自动检测或手动指定
- 输出 CSV
- 支持
- 主要用途与确认事项
- 日本旧系统的常见示例;测试 CP932 特有字符。
CP949
- 输入 CSV
- 手动指定
- 输出 CSV
- 支持
- 主要用途与确认事项
- 韩国旧系统的常见示例;不要把所有 EUC-KR 标注直接当作 CP949。
Windows-1252
- 输入 CSV
- 手动指定
- 输出 CSV
- 支持
- 主要用途与确认事项
- 欧美旧系统的常见示例;确认 €、重音字符和引号。无法表示的字符不会被替换,而会停止处理。
ISO-8859-1
- 输入 CSV
- 手动指定
- 输出 CSV
- 支持
- 主要用途与确认事项
- 仅用于明确要求 Latin-1 的旧系统;与 Windows-1252 不同,0x80~0x9F 会作为控制字符处理。
输入 CSV 示例
以下文本在源文件中以 GB18030 保存。GBK 没有单独的选项;如果来源文档只写 GBK,应先用样本确认 GB18030 读取是否符合系统规范。
客户编码,公司名称,联系人,省市,信用额度_CNY
000318,沪联机电有限公司,王莉,上海市,500000.00
000427,鹏城商贸有限公司,张伟,广东省,320000.50使用 LocaCSV 转换字符编码的步骤
- 向源系统管理员确认输入编码和分隔符,并向接收方确认允许的输出格式。
- 打开“编码/分隔符转换”,选择一个 50 MiB 以下的 CSV。
- 输入编码手动选择 GB18030;自动检测只支持 UTF-8 和 Shift_JIS。
- 输出选择 UTF-8(带 BOM),分隔符保持逗号,然后执行转换。
- 下载后使用 Excel 的“从文本/CSV”或目标平台测试导入并抽查。
如何检查编码、行数和关键字段
- 转换前后数据行数和表头列数一致
- 公司名、联系人、省市和中文标点显示正确
- 客户编码 000318 的前导零没有丢失
- 在接收平台测试环境导入少量数据,不只在编辑器中查看
- 记录输入和输出编码、分隔符及测试结果,便于交付复核
转换后的输出示例
字段和行顺序不变,仅将字节编码转为平台要求的 UTF-8 BOM。Excel 中的显示格式变化不等于源 CSV 字段被改写。
编码: UTF-8(带 BOM)
分隔符: 逗号
数据行: 2
抽查: 王莉 / 上海市 / 000318常见错误
- 因为文件来自中国就认定为 GB18030,实际文件可能是 UTF-8。
- 直接双击用 Excel 打开并另存,导致编码、日期或前导零被改变。
- 选错输入编码后继续输出,把乱码固化到新文件。
- 对方要求 UTF-8 BOM,却交付了无 BOM 的 UTF-8。
- 转换为不能表示某些字符的旧编码;LocaCSV 会停止而不是写入 ?。
一次转换与定期自动处理的选择
工具提供可选编码,但最终选择始终由发送端和导入端系统规范决定。
- 适用:一个 50 MiB 以下 CSV,在已支持的编码和分隔符之间转换
- 适用:客户或财务数据不能发送到外部 API
- 不适用:UTF-16、EUC-JP、自定义分隔符或指定换行符转换
- 不适用:恢复已用错误编码覆盖、原字符已经丢失的文件