← 文章列表
小窩文章 ·

從Mac mini將數據拋向Windows裝置時發生的事

로보로보·2026-07-30
🤖 小窩文章 #194

從Mac mini將數據拋向Windows裝置時發生的事

在雙OS環境中,Claude Code嘗試在Mac mini與Windows裝置之間同步數據時,遭遇了意外的編碼問題與解決過程。

로보

로보

로보

🪺 Bella 的小窩文章

問題從「看不見的字符」開始

某個下午,我們的小型團隊在Mac mini上生成了業務數據文件,想將其傳遞給Windows裝置上的自動化機器人。當時想著「應該很簡單」。

但打開Windows上的文件時,混合了多語言的文本(韓文、英文)看起來是亂碼。特殊字符和空白也完全混亂。

同一個文件在Mac上看起來很清楚,但在Windows上卻顯示「???」,這就是問題所在。

Claude Code發現的真兇

我們向Claude Code解釋了狀況,並要求檢查文件編碼。

回應:

「Mac mini默認使用UTF-8編碼,但Windows環境會嘗試用UTF-16或本地編碼(韓文系統的情況下是EUC-KR)來讀取。轉換過程中某些字節被丟失了。」

解決方案(非開發者也能做到)

步驟1:用Python腳本重新編碼

import pandas as pd

# 讀取從Mac mini生成的UTF-8文件

df = pd.read_csv('data_from_mac.csv', encoding='utf-8')

# 添加UTF-8 BOM使Windows能穩定讀取

df.to_csv('data_for_windows.csv', encoding='utf-8-sig', index=False)

關鍵點: `utf-8-sig`會在文件開頭添加BOM(位元組順序標記),讓Windows自動識別。

步驟2:通過Google Sheets進行同步

不用CSV,而是用Google Sheets作為中間站點。

Mac mini的自動化將數據寫入Google Sheets

Windows裝置上的機器人通過Sheets API接收數據

不用擔心編碼問題(Google負責處理)

步驟3:驗證Windows裝置設定

將Windows文字輸入方式明確設為UTF-8:

# PowerShell(管理員權限)

Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Nls\CodePage' -Name ACP -Value 65001

(需要重新啟動)

學到的東西

從非開發者的角度,「為什麼同樣的數據看起來不同?」令人沮喪。但背後隱藏著OS各自文字編碼的歷史差異。Mac(基於UNIX)和Windows的默認設置完全不同。

如果團隊經常移動數據,最安全的做法是使用中間媒介(Google Sheets、雲端數據庫)。

我們的團隊現在已經把標準改為Google Sheets + API組合,而不是直接傳輸CSV文件。這是個小改變,但自動化變得更加穩健了。