V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Jiajin
V2EX  ›  问与答

excel 如何直接打开 utf8 编码的 csv 文件不乱码?

  •  
  •   Jiajin · 283 天前 · 1583 次点击
    这是一个创建于 283 天前的主题,其中的信息可能已经有所发展或是发生改变。

    简单的方法

    excel 不支持这个我是看不懂的,numbers 都可以。有什么简单的方案能实现这个需求吗?

    需求:可以直接用鼠标右键,通过 excel 打开,然后不乱码

    麻烦的办法

    1. vs code 打开 csv ,把 utf8 编码重新保存为 utf8-bom 然后再右键打开
    2. 先开一个空白 excel ,数据->获取数据->从 csv 中加载
    3. numbers 打开,另存为 excel ,再打开
    4. 写一个脚本,然后终端里执行下自动重编码或者转 excel ,然后再自动打开 excel
    9 条回复    2024-02-07 19:18:29 +08:00
    ho121
        1
    ho121  
       283 天前 via Android   ❤️ 1
    生成 csv 时就把 BOM 带上
    beyondstars
        2
    beyondstars  
       283 天前
    编码就跟炒菜一样众口难调,没办法强制要求全世界都使用唯一的方案。所以我倾向于「谁使用、谁适配」的原则:需要读取文件的那一方自己转码、适配。一些 country 针对字符在计算机中的编码和表示制定了 national standard ,软件厂商为了合规以及在公务办公环境中默认不出错,会默认去遵循这些标准。
    fuzzsh
        3
    fuzzsh  
       283 天前 via Android
    cjk 去日期时间区域勾上缺省使用用 utf8 编码
    ysc3839
        4
    ysc3839  
       283 天前 via Android
    印象中 Excel 导入 csv 可以选编码
    adoal
        5
    adoal  
       282 天前
    平行世界里的微软,选择了从某个版本的 Excel 开始,直接打开 CSV 文件时使用 UTF-8 编码。
    然后那边的 v8ex 网站上有个 v 友在提问:excel 如何像以前版本那样直接打开 ansi 编码的 csv 文件不乱码?
    Vegetable
        6
    Vegetable  
       282 天前
    自己添加一个右键菜单,执行 4 的逻辑,不过不用专门转码,打开前检查第一个字符是不是 BOM ,不是就加上。
    qinxi
        7
    qinxi  
       282 天前
    csv 的内容以`\uFEFF` 开头就好了
    SunsetShimmer
        8
    SunsetShimmer  
       282 天前
    Python 打开文件对象 encoding="utf-8-sig"
    justincnn
        9
    justincnn  
       282 天前
    encode 一下,多一步,话说 office 在 mac 上真的不友好。还不如不发布 mac 版
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2607 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 04:47 · PVG 12:47 · LAX 20:47 · JFK 23:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.