快捷添加 UTF-8 BOM
前言
因工作需求,要將政府資料開放平台上的 CSV 檔處理並整合成 XLSX 檔。
由於微軟的 Excel 在讀取 CSV 檔時,需要 BOM 來告知使用何種編碼開啟。
而一般的 CSV 檔不會加上 BOM,macOS 上的 Excel 預設編碼也不是 UTF-8。
故若直接於 macOS 上使用 Excel 開啟 UTF-8 編碼的 CSV 檔,將以亂碼顯示。
終端機添加 UTF-8 BOM
於終端機下指令,對檔案input.csv
添加 UTF-8 BOM 並輸出為output.csv
:
cat <(printf "\xEF\xBB\xBF") input.csv > output.csv
右鍵添加 UTF-8 BOM
每次轉換都要開啟終端機著實不太方便,可透過建立快速動作來實現右鍵添加。
-
開啟
Automator.app
,選擇快速動作
→工作流程接收目前的文件
,位置:Finder.app
。 -
雙擊左面板
工具程式
中的執行 Shell 工序指令
以添加進目前的工作流程。 -
傳遞輸入:
作為引數使用
,並於下方框格中鍵入:for f in "$@" do dirname=$(dirname "$f") filename=$(basename "$f") cat <(printf "\xEF\xBB\xBF") "$f" > "$dirname"/BOM_"$filename" done
-
儲存檔名為
添加 UTF-8 BOM
,預設路徑為:~/Library/Services
。 -
右鍵點擊欲轉換之檔案,選單中即出現
添加 UTF-8 BOM
選項。
貼文底端