Macで圧縮したZIPをWindowsの相手へ送り、ファイル名が読めなくなった経験はないでしょうか。これはファイルが壊れたとは限りません。ZIPに含まれるファイル名の文字コードと、受信側の解凍ソフトが想定する文字コードが一致しない場合に起きます。まずは文字コードと暗号化を別の問題として整理することが重要です。
ZIP自体が開けても、ファイル名だけ文字化けする理由
ZIPは複数のファイルをまとめる形式です。内容を復元できることと、格納されたファイル名を正しく表示できることは同じではありません。日本語を含むファイル名は、環境やソフトによって解釈の違いが出る場合があります。Windows標準の機能か、別の解凍ソフトかによっても結果が変わり得ます。
CP932とUTF-8は何が違うのか
CP932は日本語Windowsとの互換性を重視する場合の文字コードの一つです。一方、UTF-8は多言語文字列を幅広く扱えるUnicodeベースの文字コードです。どちらかを常に選べば全環境で正しく表示される、という単純な関係ではありません。受信者のOSだけでなく、使用する解凍ソフトを確認するのが確実です。
送信前に確認する5つのこと
- 相手の環境:Windowsのバージョンと、ZIPを開くソフトが分かれば確認します。
- ファイル名:日本語や特殊文字を含む場合、事前にテスト用ZIPで表示を確認します。
- 文字コード:相手が使う解凍ソフトに合わせ、CP932またはUTF-8を選択できる手段を検討します。
-
不要な管理ファイル:Mac由来の
.DS_Store、__MACOSX、._*などが混ざっていないか確認します。 - 解凍テスト:大切な納品物は、相手に渡す前に実際の受信環境でテストします。
文字コードとZIPのパスワード保護は別の設定
ZIPのファイル名に使う文字コードと、ZIPに設定するパスワードの暗号化方式は別の要素です。AES-256で暗号化しても、それだけで文字化けが解消するわけではありません。また暗号化方式によって、受信側の解凍ソフトが対応しているかどうかも変わります。互換性を確認してから送付してください。
Mac側でZIPの互換性を確認する方法
当社のPKPassport for Macは、MacでZIPを作る際に、ファイル名をCP932またはUTF-8から選び、Mac固有のファイルを除外できる買い切りアプリです。送信前のWindows向けファイル名表示プレビュー、AES-256/ZipCryptoによるパスワード保護にも対応し、処理はMac内で完結します。相手の解凍環境によって結果が異なる場合があるため、重要なデータは事前にテストしてください。対応環境・機能・購入条件を確認する。
ZIPという形式の背景を知る
ZIPという名前と形式の歴史には、圧縮ソフトを作ったフィル・カッツの技術思想が関わっています。詳しくはZIPという名前の由来と圧縮形式の歴史をご覧ください。
よくある質問
ファイル名が文字化けしたら中のデータも破損していますか?
必ずしもそうではありません。ファイル名の解釈だけが合っていない場合もあるため、テスト環境で中身の確認が必要です。
Windowsで開くならCP932が必須ですか?
必須ではありません。UTF-8対応の解凍ソフトもあります。相手のソフトに合わせて選択してください。