CSV 编码助手
丢一份乱码 CSV,看清真实编码,下载一份 Excel 能正常打开的文件。
把 CSV 拖到这里
或点击选择 —— 支持 .csv / .tsv / .txt,上限 5.0 MB。只在本标签页读取,不上传。
导出
怎么用
- 把 CSV 拖到卡片上,或点击「选择文件」。编码与分隔符会立刻检测出来,表格直接显示在下方 —— 没有要点的按钮。「这份文件是什么」那一行会告诉你用了哪个编码,以及还有几个候选同样能完整解码这份文件。
- 如果预览还是错的,就手动指定源编码。候选顺序跟随本页语言:中文页以 GB18030、Big5 开头,阿语页以 Windows-1256、ISO-8859-6 开头,英文页以 Windows-1252、MacRoman 开头。切换是即时的,也不会动你打开的文件。
- 点「下载 CSV」拿到修好的副本。它一定是 UTF-8;默认勾选的「加 BOM」会在开头写入三个字节的标记,让 Excel 不再回退到系统码页。「复制」给你同样的文本但不带这个标记,可以直接粘进数据库或脚本。
- 「粘贴文本」是第二个入口,用于乱码字符已经被当成文本保存下来的情况。此时原始字节不可得,检测无从谈起,但勾选「修复乱码字符」会把文本按 Windows-1252 写回字节再按 UTF-8 读出来,把「汉å—」还原成「汉字」。
示例
示例文件(UTF-8 无 BOM 的中文 CSV)
姓名,城市,备注,金额 张伟,北京,"加急,谢谢",89.90 李娜,上海,普通,15.50
下载的文件(UTF-8 带 BOM)
姓名,城市,备注,金额 张伟,北京,"加急,谢谢",89.90 李娜,上海,普通,15.50
中文 CSV 最常见的乱码成因不是编码错了,而是缺 BOM —— Windows 版 Excel 双击打开时会回退到系统码页。示例文件正是这种情况:内容是对的,缺的是开头那三个字节。
局限
- 只导出 UTF-8(带或不带 BOM)。平台自带的 TextEncoder 只实现 UTF-8,自造码页表无法与 iconv / Excel 逐字节对齐验证,界面上写「已转为 GBK」属于伪精确。需要输出遗留码页时,请先在这里确认源编码和内容,再在本地执行 iconv -f <源编码> -t GBK。
- 遗留码页一律报「猜测」,从不报「确定」。GBK 与 Big5、Windows-1252 与 MacRoman 在短样本上天然可互换,因此工具会列出并列候选,由你看一眼预览确认,一键即可切换。
- 少数 GBK / Big5 字节序列碰巧也是合法 UTF-8(C2 80 在 GB18030 里是「聙」,在 UTF-8 里是控制字符)。这种情况会降级为「猜测」并同时列出候选,不会假装确定。反过来,不含假名的纯汉字日文与中文在字节层面无法区分,工具会如实并列。
- 候选集是浏览器 TextDecoder 支持的码页,不含 CP437、TIS-620、hp-roman8,UTF-32 完全无法解码 —— 命中 UTF-32 的字节序标记会明确报出并拒绝。
- 粘贴的文本没有字节。乱码字符还在时可以修复,但已经变成 ? 或替换字符的文本信息已经丢失,工具不会假装修好它。
- 预览只渲染前 200 行并截断过长的单元格;下载是全量、完整值。数据本身一律不 trim、不去前导零、不推断日期与数字,引号内的逗号原样保留。
- 文件超过 5 MB、文本超过 200,000 码点会明确报错而不是静默截断。.xls / .xlsx 是二进制容器,不读取。
- 全部在本标签页完成:不上传、不写进地址栏、不落存储。想验证的话,页面加载完成后断开网络,工具照常工作。
相关工具
同一份文件的邻近步骤:查看、整理、转换。