一劳永逸解决mac打开csv中文乱码问题

Mac一键修复CSV中文乱码

实际就是 将一个 UTF-8 编码的 CSV 文件转换为 GB2312 编码,并输出到新文件中。


iconv -f UTF-8 -t GBK 源文件.csv > 新文件.csv

我们需要做的就是将这段命令添加到 右键–快速操作

  • iconv:是 Linux/Unix 系统中用于字符编码转换的命令行工具。
  • -f UTF-8:指定源文件的编码格式是 UTF-8(-f 表示 “from”)。
  • -t GBK:指定**目标转换的编码格式**是 GBK(-t` 表示 “to”)。
  • 源文件.csv:要转换的原始文件名。
  • > 新文件.csv:将转换后的内容重定向输出到“新文件.csv”。

步骤

在 macOS 上,原生系统不支持直接给右键菜单添加自定义命令(不像 Windows 有“发送到”或注册表),但你可以通过以下几种方式,实现“选中文件 → 右键 → 一键转编码” 的效果:


✅ 推荐方案:用 Automator 创建“快速操作”(Quick Action) + 服务菜单

这是 macOS 原生支持、最稳定、最易用的方法,最终效果是:

在 Finder 中选中文件 → 右键 → “快速操作” → “转换为 GBK” → 自动生成新文件


🧩 步骤详解:

1. 打开 Automator(应用程序 → 实用工具 → Automator)

2. 创建新文档 → 选择 “快速操作”(Quick Action)

3. 设置参数(右上角):

  • 工作流程收到当前: 文件或文件夹
  • 位于: Finder.app在这里插入图片描述

✅ 这样你就能在右键菜单里看到这个操作了。


4. 在左侧动作库中搜索并拖入:

“运行 Shell 脚本”

设置如下:

  • Shell: /bin/zsh(或 /bin/bash,根据你系统)
  • 传递输入: 作为自变量

5. 在脚本框中输入:

for f in "$@"
do
    if [[ -f "$f" ]]; then
        dir=$(dirname "$f")
        base=$(basename "$f")
        newname="${dir}/GBK_${base}"
        iconv -c -f UTF-8 -t GBK "$f" > "$newname"
        echo "✅ 已转换:$f$newname"
    fi
done

# 可选:转换完成后弹出提示
osascript -e 'display notification "文件编码转换完成!" with title "编码转换"'

📌 说明:

  • 会为每个选中的文件生成一个 GBK_原文件名.csv 的新文件。
  • -c 忽略无法转换的字符,避免报错中断。
  • 最后会弹出一个 macOS 通知提示完成。

6. 保存这个快速操作

  • ⌘ + S
  • 命名为:“转换为 GBK 编码”

7. 使用方法:

  1. Finder 中选中你的 .csv 文件(可多选)
  2. 右键 → “快速操作” → “转换为 GBK 编码”
  3. 等待通知 → 同目录下生成 GBK_xxx.csv 文件!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值