ZIPの文字化けを直す方法|Mac・Windows間で起きる原因と対処
【免責事項】 本記事は2026年5月時点の各OSの標準仕様に基づく一般的な解説です。OSのバージョンや使用する圧縮・解凍ソフトによって挙動や画面表示は異なります。重要なファイルを扱う際は、必ず元データのコピーを残したうえで作業してください。文字化けの修復によるデータ破損などについて、当サイトは責任を負いかねます。
① なぜZIPで文字化けが起きるのか
MacとWindowsの間でZIPファイルをやり取りすると、解凍したときにファイル名が「ハ。コ ゙」のような意味不明な文字列に変わってしまうことがあります。これが「ZIPの文字化け」です。原因を正しく理解すると、修復も予防も簡単になります。
文字コードとは
コンピュータは文字を数値(バイト列)として扱います。「どの文字をどの数値で表すか」の対応表が文字コードです。日本語環境では主に次の2系統が使われています。
- シフトJIS系(CP932) ─ Windowsが日本語ファイル名で長年使ってきた文字コード
- UTF-8 ─ 世界中の文字を統一的に扱える現代の標準。MacやLinux、Webの標準
同じ「請求書」という3文字でも、シフトJISとUTF-8ではまったく異なるバイト列になります。シフトJISで書かれたバイト列をUTF-8として読む(またはその逆)と、対応表が食い違うため、人間には読めない文字列=文字化けになります。
ZIP仕様にエンコード情報が無いという根本原因
ここがZIP特有の問題です。従来のZIPファイル形式には、ファイル名がどの文字コードで記録されているかを示す情報が含まれていません。ZIPの中にはファイル名のバイト列がそのまま入っているだけで、「これはシフトJISです」「これはUTF-8です」という札が付いていないのです。
そのため解凍するソフトは「たぶんこの文字コードだろう」と推測するしかありません。多くの場合、解凍する側のOSが標準とする文字コードで解釈します。圧縮した側と解凍した側の標準が違えば、推測が外れて文字化けが発生します。
なお、後発の仕様拡張では「ファイル名はUTF-8」と明示できるフラグ(汎用フラグの第11ビット)が定義されています。このフラグを正しく立てて圧縮されたZIPは文字化けしにくいのですが、Windows標準の圧縮機能はこのフラグを立てずシフトJIS系で記録するため、Mac側との不一致が起きやすいのです。
② Mac→Windows / Windows→Mac それぞれのケース
文字化けは「どちらのOSで圧縮し、どちらのOSで解凍したか」で症状が分かれます。
Mac→Windows(Macで圧縮 → Windowsで解凍)
Mac標準の圧縮(Finderの「圧縮」)は、ファイル名をUTF-8で記録します。一方、Windowsの標準解凍機能はファイル名をシフトJIS系として解釈しようとします。その結果、UTF-8のバイト列がシフトJISの表として読まれ、日本語ファイル名が文字化けします。
ただし、Mac側がUTF-8明示フラグを立てている場合、新しいWindowsの解凍機能はフラグを尊重して正しく表示できることもあります。挙動はWindowsのバージョンや使うソフトによって変わります。
Windows→Mac(Windowsで圧縮 → Macで解凍)
Windows標準の圧縮(右クリック「ZIPファイルに圧縮する」)は、ファイル名をシフトJIS系(CP932)で記録し、UTF-8明示フラグを立てません。Macの標準解凍(アーカイブユーティリティ)はファイル名をUTF-8として解釈するため、シフトJISのバイト列がUTF-8の表で読まれて文字化けします。
実務では、取引先がWindowsで作って送ってきたZIPをMacユーザーが開けない、というこのケースが特に多く発生します。
文字化けしても中身は無事
重要なポイントとして、文字化けしているのはファイル名だけで、ファイルの中身(PDFや画像のデータ本体)は壊れていません。ファイル名が読めなくても、正しい文字コードで展開し直せば、中身はそのまま開けます。あわてて削除しないようにしましょう。
③ OS標準機能での対処法
専用ソフトを入れずに、まずはOS標準の機能でできる対処を試してみましょう。
Windowsでの対処
- 新しいWindowsの解凍機能を使う ─ 近年のWindowsはZIP内のUTF-8明示フラグに対応しています。Mac由来のZIPで、フラグが正しく立っていれば標準のエクスプローラーで正常に解凍できる場合があります。
- 解凍前にプレビューで確認する ─ ZIPをダブルクリックして中身を一覧表示し、文字化けの有無を確認してから展開します。文字化けしている場合は無理に展開せず、後述のツールに切り替えます。
Macでの対処
- 標準のアーカイブユーティリティで開いてみる ─ Windows由来のZIPでも、UTF-8明示フラグが立っていれば正常に解凍できます。立っていない(シフトJIS)場合は文字化けします。
- 文字化けしたら展開済みファイルは破棄する ─ いったん文字化けした状態で展開してしまうと、ファイル名から元の名前を推測するのは困難です。元のZIPファイルは消さずに残しておき、正しい文字コードを指定できる方法で展開し直します。
OS標準機能には「解凍時に文字コードを指定する」というオプションが基本的にありません。標準機能で文字化けする場合は、文字コードを指定できる専用の方法が必要になります。
④ 文字化けを防ぐ送り方
文字化けは「直す」より「起こさない」ほうが圧倒的に楽です。ファイルを送る側が次の点を意識するだけで、トラブルの大半は防げます。
ファイル名・フォルダ名を半角英数字にする
もっとも確実な予防策です。シフトJISとUTF-8で表現が変わらない半角英数字(とハイフン・アンダースコア)だけでファイル名を付ければ、どのOSで解凍しても文字化けしません。
- 悪い例:
御見積書_2026年5月.pdf - 良い例:
estimate_2026-05.pdf
取引先と日常的にファイルをやり取りする場合は、ファイル命名ルールを英数字ベースで決めておくと、文字化けだけでなく検索性も向上します。
事前にエンコードを指定して圧縮する
日本語ファイル名をどうしても残したい場合は、UTF-8でファイル名を記録し、UTF-8明示フラグを立てられる圧縮ソフトを使います。多くのサードパーティ製圧縮ソフトには、圧縮時に文字コードを「UTF-8」または「シフトJIS」から選べる設定があります。
- 相手がMacなら → UTF-8で圧縮(明示フラグあり)
- 相手が古いWindows環境中心なら → シフトJISで圧縮するか、英数字ファイル名にする
相手のOSが分からない、または混在している場合は、英数字ファイル名にしておくのが最も安全です。
クラウドストレージ経由を検討する
ZIPで固めて送る代わりに、クラウドストレージの共有リンクで渡すと、ファイル名はサービス側のUTF-8で管理されるため文字化けが起きにくくなります。容量の大きいファイルや、相手のOS環境が読めない場合の選択肢として有効です。
⑤ 当サイトのツールで修復する手順
すでに文字化けしてしまったZIPファイルは、正しい文字コードを指定して展開し直せば元のファイル名を復元できます。前述のとおりファイル名のバイト列自体は壊れていないため、解釈の文字コードを合わせるだけで直ります。
当サイトの「Mac/Windows ZIP文字化け修復ツール」は、ブラウザ上で文字コードを判定・指定してファイル名を復元します。ソフトのインストールは不要で、次の手順で修復できます。
- 元のZIPファイルを用意する ─ 文字化けした状態で展開済みのファイルではなく、圧縮されたZIPファイルそのものを用意します。念のためコピーを別の場所に残しておきます。
- ツールにZIPをアップロードする ─ ツール画面に文字化けしたZIPファイルを選択またはドラッグ&ドロップします。
- 文字コードを確認・選択する ─ ツールがファイル名の文字コード(シフトJIS/UTF-8)を判定します。プレビューで日本語が正しく表示される設定を選びます。
- 修復後のファイルをダウンロードする ─ ファイル名が正しく復元された状態で、ZIPまたは個別ファイルとして保存します。
アップロードしたファイルがブラウザ内で処理されるか、サーバーに送信されるかはツールの仕様によります。機密性の高い書類を扱う場合は、ツールの処理方式や注意書きを確認のうえご利用ください。
ファイル形式まわりのトラブルについては、ファイル形式・トラブルガイドの一覧もあわせて参照してください。ZIPで送るPDFが重いときはPDFのファイルサイズを小さくする方法、受け取ったPDFの表を編集したいときはPDFをExcel・Wordに変換する方法も役立ちます。
よくある質問(FAQ)
Q. 文字化けしたファイルの中身は壊れていますか?
いいえ。文字化けはファイル名の「表示」の問題であり、PDFや画像などファイルの中身(データ本体)は壊れていません。正しい文字コードで展開し直せば、中身はそのまま開けます。
Q. すでに文字化けした状態で解凍してしまいました。直せますか?
展開後のファイル名から元の名前を推測するのは困難です。ただし、圧縮された元のZIPファイルが残っていれば、正しい文字コードを指定して展開し直すことで元のファイル名を復元できます。元のZIPは削除せず残しておいてください。
Q. Windows標準の圧縮はなぜ文字化けしやすいのですか?
Windows標準の圧縮機能はファイル名をシフトJIS系(CP932)で記録し、ZIPの「ファイル名はUTF-8」という明示フラグを立てないためです。UTF-8を前提に解釈するMac側で開くと、文字コードが食い違って文字化けします。
Q. 文字化けを根本的に防ぐ一番簡単な方法は?
圧縮するファイル名・フォルダ名を半角英数字だけにすることです。半角英数字はシフトJISとUTF-8で表現が変わらないため、どのOSで解凍しても文字化けしません。相手のOS環境が分からない場合に最も確実な方法です。
