メールでもらったZIPを7Zipで開いたとき、ファイル名が文字化けして読めず困っていませんか?
このページでは長年Windowsを扱う開発現場で磨かれた手順をもとに、設定の見直しからスクリプトでの一括展開まで、どなたでも安全に試せる直し方を順序立ててお示しします。ファイル名の乱れを一度で解消できる安心感を得られます。さらに原因の仕組みもやさしく触れます。
作業前にダウンロードする物や操作の流れを先に確認しておけば、戸惑いを最小限に抑えられます。時間のある今のうちに内容を読み進めて、快適な解凍環境を整えてみませんか。
7Zipの文字化けをスッキリ直す手順をまるっと紹介

7Zipでファイル名が文字化けするときは、大きく分けて三つの方法で対応できます。
- 日本語化言語ファイルを導入:公式サイトの日本語化ファイルをインストールしてメニューから言語を日本語に切り替える
- コマンドラインで文字コード指定:
-sccUTF-8
や-sccCP932
オプションを使い、対応する文字コードで展開する - PowerShellやスクリプト活用:
Expand-Archive
や自作バッチで正しい文字コードを渡して解凍する
それぞれ手軽さや確実性が異なるので、用途や好みにあわせて試してみてください。
7Zipの設定を変えて解凍する方法

7Zipだけで文字化けを防ぎたいときは、解凍前に文字コードの設定を日本語向けにそろえる方法が便利です。
このやり方なら余計なツールは不要で、一度設定しておけば毎回クリアな日本語ファイル名で解凍できます。日本語の圧縮ファイルをよく扱うなら頼れるテクニックです。
①エクスプローラーで対象ZIPを右クリック
エクスプローラーでZIPファイルがあるフォルダを開いて、文字化けしているファイルを探します。該当のZIPファイルの上で右クリックしてください。
②コンテキストメニューから7-Zip→「アーカイブの展開」を選ぶ
解凍したいzipファイルを右クリックして、表示されたメニューから7-Zipにカーソルを合わせます。
続けてサブメニューの「アーカイブの展開」をクリックすると、解凍先フォルダを指定するダイアログが開きます。
③展開ウィンドウの「パスのエンコード」でUTF-8を指定
展開ウィンドウの下部にある「パスのエンコード」を探してクリックします。
表示されたプルダウンメニューからUTF-8を選ぶと、日本語ファイル名が正しく表示されます。
指定したら「OK」または「展開」ボタンを押して処理を進めるだけで文字化けが解消されます。
④展開先フォルダーを決めて「OK」を押す
ダイアログ中央のフォルダ一覧から展開先にしたいフォルダーをクリックします。ほかの場所を指定する場合は、右側のフォルダアイコンを押してパスをたどってください。
選んだフォルダーの名前が表示されたら、右下の「OK」ボタンをクリックします。これで展開先が確定してファイルが解凍されます。
フォルダー名に日本語や空白が含まれていると、稀に文字化けが起こることがあります。英数字だけのシンプルな名前を使うと安心です。
7Zip外のソフトで解凍しなおす方法

7Zipでうまく文字化けが直らないときは、別の解凍ソフトを使ってみるとお手軽です。たとえばBandizipやLhaplusは、ファイル名の文字コードを自動判別してくれることが多く、Windows標準のエクスプローラーで解凍するよりスムーズに文字化けを回避できます。設定やコマンドをいじらずにサクッと解凍したいときにぴったりな方法です。
①公式サイトからBandizipをダウンロード
「Download」ボタンの下にある「Windows」アイコンをクリックして、最新版のインストーラーをダウンロードします。
②インストール後にBandizipでZIPを開く
インストールが終わったら、まずはZIPファイルをBandizipで開いてみましょう。エクスプローラー上のZIPファイルを右クリックして「Bandizipで開く」を選ぶと、すぐに中身が表示されます。もしメニューに出てこない場合は、Bandizipを起動してメニューの「開く」から対象のZIPを選んでみてください。
③右上の「文字コード」プルダウンで自動判定を試す
7Zipのウィンドウ右上にある「文字コード」プルダウンをクリックします。
メニューの中から「自動判定」を選びます。
あとは普段どおりに解凍ボタンを押すだけで、7Zipがファイル名の文字コードを読み取って正しい名前で展開してくれます。
④プレビューで問題なければ「抽出」をクリック
プレビュー画面でファイル名に問題がないことを確認します。文字化けや余分な文字が混じっていなければ、画面右下の「抽出」をクリックしてください。
PowerShellで一発変換する方法

PowerShellならWindows10以降に標準搭載されているので、新しいソフトを入れずに文字化けしたファイル名をバッチ処理でサクッと直せます。コマンド一発でまとめて変換できるから、大量のアーカイブを扱うときやGUI操作がちょっと面倒に感じるときにぴったりです。また、スクリプトとして保存すれば次回以降も同じ手順を再利用できるので、一度用意しておくとプログラマーらしい効率的な作業が実現できます。
①スタート→Windows PowerShellを起動
タスクバー左下のスタートボタンをクリックします。
検索ボックスに「powershell」と入力すると「Windows PowerShell」が表示されるのでクリックして起動します。
②コマンドchcp65001でUTF-8に切り替え
Windowsキー+Rで「ファイル名を指定して実行」を開き、「cmd」と入力してEnterキーを押しコマンドプロンプトを起動します。
以下のコマンドを入力してEnterキーを押します。
chcp 65001
「Active code page: 65001」と表示されたら切り替え完了です。これで7Zipを使った際の日本語ファイル名の文字化けが改善しやすくなります。
chcpコマンドはコマンドプロンプトを立ち上げるたびにリセットされるので、7Zipを実行する前に毎回この操作をしてください。
③Expand-ArchiveコマンドでZIPを展開
PowerShellのExpand-Archiveコマンドを使うと、ZIPファイルをコマンド一発で展開できるよ。
スタートメニューで「Windows PowerShell」を右クリックして「管理者として実行」を選ぶと安心だよ。
下のコマンドでZIPを展開できるよ。パスにスペースがあるときはダブルクォートで囲むのを忘れないでね。
Expand-Archive -Path "C:\path\to\archive.zip" -DestinationPath "C:\path\to\output" -Force
展開先のフォルダに同名ファイルがあるときは-Forceで上書きされるので注意してね。
④展開先のフォルダーを開いて文字化けを確認
ファイルエクスプローラーを起動して、先ほど指定した展開先のフォルダーを開きます。ファイル名が日本語のまま正しく表示されているか確認してください。必要に応じてフォルダーを右クリック→「更新」を選んで最新の状態にします。
文字化けが残っている場合は、解凍時の文字コード設定が正しく反映されていない可能性があります。前の設定に戻って文字コードを見直してください。
文字化けが直ったら広がる便利ワザ

文字化けがキレイに直ると、ただファイル名を読むだけじゃなくて色んなことがサクサク進みます。
便利ワザ | 活用シーン |
---|---|
一括リネーム | 大量の抽出ファイル名をPowerShellスクリプトで自動変換するときに便利 |
マルチバイト検索 | 日本語名のZIPや7zファイルをフォルダ内で漏れなく検索するときに役立つ |
自己解凍形式作成 | 配布先で追加ツール不要で展開できる実行ファイルを作る場面で重宝 |
定期バックアップ | NASやクラウドにアップロードする前に、正しい文字コードでアーカイブを固める運用に最適 |
どれも一度覚えれば、毎日の作業がちょっと楽しくなるテクばかりです。
圧縮時に文字化けを防ぐ7Zip設定を覚える

文字化けの原因は圧縮時にファイル名の文字コードを正しく設定できていないことがほとんどです。7Zipなら圧縮オプションでUnicode(UTF-8)や指定のコードページを選べるため、ここを合わせるだけでガクッと文字化けが減ります。
このやり方は追加のツールを入れる必要がなく、手元の7Zipだけで完結するのが魅力です。とくに社内やお友だちとやり取りするときに「解凍したら文字がおかしくなった!」とならない安心感があります。
7Zipのオプション画面でデフォルトエンコードをUTF-8に変更する
まず7-Zip File Managerを起動してオプション画面を開きます。
Windowsキー+Sで「7-Zip」と入力し、表示された「7-Zip File Manager」をクリックします。
メニューバーの「ツール」から「オプション」を選択します。設定画面が開きます。
「システム」タブを開き、「アーカイブ内のファイル名に使う文字コード」欄でUTF-8を選択し、「OK」をクリックします。
設定がグレーアウトしている場合は、7-Zip File Managerを右クリックして「管理者として実行」してください。
新規アーカイブ作成時にコメント欄へ使用エンコードを明記する
アーカイブを作成するときに表示される「コメント」欄にエンコード: UTF-8
など実際に選んだ文字コードを入力します。これで後から開くときにどの文字コードで圧縮したかすぐわかります。
大量のZIPをまとめてチェックするスクリプト

ZIPファイルが山ほどあるときは、ひとつずつ7Zipを開くのがつらいですよね。そんなときに活躍するのが、PowerShellやPythonで書くバッチスクリプトです。この方法ならフォルダ内のすべてのZIPを順番にチェックして、文字化けしているファイル名を一気にリストアップできます。プログラマー視点のちょっとしたコツとして、.NETのZipArchiveクラスやPythonのzipfileモジュールでエントリ名を読み込むときに、デフォルトのCP437(英語圏)からCP932(日本語)へ変換を試みるロジックを組み込むと、精度よく文字化けを検出できて便利です。
PowerShellでフォルダー内ZIPをループ処理し自動展開する
エクスプローラーでZIPが入ったフォルダーを表示して、アドレスバーにpowershellと入力してEnterを押します。これで作業フォルダーがスクリプト実行場所になります。
フォルダー内のすべてのZIPを自動で展開するコマンドを実行します。
Get-ChildItem -Path "." -Filter "*.zip" | ForEach-Object {
$dest = Join-Path $_.DirectoryName $_.BaseName
Expand-Archive -Path $_.FullName -DestinationPath $dest -Force
}
エクスプローラーでフォルダーを確認して、ZIPごとに同名のフォルダーが作成され、中身が展開されていることを確かめてください。
エラーログに文字化けファイル名を吐き出して後で確認する
コマンドプロンプトで7z
コマンドに-bb3
を付けて実行すると、詳しいログが残せます。標準出力と標準エラーをまとめてログファイルに保存すれば、文字化けしたファイル名もしっかり確認できます。
7z x archive.zip -oC:\output -bb3 > C:\logs\7zip_error.log 2>&1
この例ではarchive.zip
を展開しながら、C:\logs\7zip_error.log
にすべての情報を出力します。
海外のZIPも安心!自動判定バッチを作る

海外から届いたZIPファイルは文字化けが心配ですよね。そんなときはバッチファイルを使ってファイル名の文字コードを自動判定しながら解凍する仕組みを用意してしまいましょう。
この方法なら初心者でも安心して使えますしプログラマー視点の信頼感もあります。
- 手間なしで自動判定:コードページがCP932かUTF-8かをチェックして最適なオプションで解凍します。
- まとめて処理OK:フォルダ内の複数ZIPを一気に処理できるので時間を節約できます。
- 環境依存を軽減:PowerShellと7zaだけで動くシンプルな設計なので追加インストールも最小限です。
この仕組みを使えば海外のファイルでも文字化けを気にせずガンガン扱えるようになります。
chcp変更と7Zipコマンドラインを組み合わせたBATを作成する
エクスプローラーで任意のフォルダを開き、右クリック→新規作成→テキストドキュメントを選びます。名前を「run7z.bat」に変更しておきます。
「run7z.bat」を右クリック→編集でメモ帳を開き、先頭にchcp 65001 >nul
と入力します。これでUTF-8表示に切り替わります。
この例ではバッチと同じフォルダにあるsample.zipを展開し、outputフォルダに保存します。フォルダ名は必要に応じて変更してください。
メモ帳で保存後、ダブルクリックで「run7z.bat」を実行します。エンコードが正しく切り替わり、文字化けせずに7Zipの処理が進めば成功です。
chcpコマンドで表示がUTF-8に切り替わらない場合は、管理者権限で実行してみてください。
ドラッグ&ドロップで誰でも使えるようにデスクトップへ配置する
エクスプローラーを開いて、PCの左側にある「PC」または「This PC」をクリックします。
「ローカルディスク(C:)」→「Program Files」→「7-Zip」フォルダを順に開きます。
7zFM.exeを見つけたら、アイコンをそのままデスクトップへドラッグ&ドロップします。
これでデスクトップにショートカットが作成され、アーカイブファイルをアイコンにドラッグするだけで解凍できるようになります。
よくある質問

- どうして7Zipでファイル名が文字化けするの
-
7Zipは中身をUTF-8で扱う一方でWindowsエクスプローラーはCP932(ANSI)で表示するため、文字コードの食い違いで日本語が化けます。
- 文字化けしたファイル名を元に戻せるの
-
7-Zipのコマンドラインで文字コードを指定して展開できます。例えば、
7z x アーカイブ.zip -mcp=932
とするとCP932扱いで展開でき、名前が正しく復元します。 - 今後文字化けを防ぐ設定はあるの
-
最新版7-Zip 23.01ならGUIの「オプション」→「圧縮」タブで「UTF-8圧縮を有効化」にチェックを入れると、Windows側でも崩れにくくなります。
7Zipで文字化けする原因は何?
ファイル名がただの英文や記号になると「えっ何これ」となりがちです。実は7Zipが中でファイル名を読み込むとき、元の文字コードと7Zipが使う文字コードがズレてしまうのが大きな理由です。
- 元のファイル名がUTF-8で保存されていて、7ZipはCP932(ANSI)で読み込む
- ZIP形式はUnicodeフラグを持たず、CP932扱いで解凍される
- LinuxやMacから転送されたアーカイブでUTF-8前提になっている
- プログラマー視点で圧縮時に「Unicode対応」オプションを忘れている
日本語だけが崩れるのはどうして?
英数字はどの環境でも同じ文字コードなので問題なく表示できるけれど、日本語はShift_JIS(Windows標準)やUTF-8などいくつもの文字コードがあって、アーカイブの文字コードと7Zipが期待する文字コードが合わないと文字化けが起きやすいです。
7Zipはzipファイル内の「UTF-8フラグ」を自動で正しく判別しないことがあるため、日本語だけがずれて見えるというわけです。
設定を変えても直らないときは?
GUI設定をいじっても文字化けが直らないときは、コマンドラインやスクリプトでファイル名を一括変換する手がありま す。PowerShellを使うと、抽出したフォルダー内のファイル名をUTF-8へまとめて書き直せるので役立ちます。
プログラマーの視点からいうと、PowerShellのGet-ChildItemとRename-Itemを組み合わせたバッチ処理はとても便利です。何度も同じ操作を繰り返す必要がある場面でも、スクリプト化すればワンクリックで実行できるので作業ミスも減らせます。
Macで作ったZIPも同じ手順で大丈夫?
Macで作ったZIPはそもそもUTF-8でファイル名を保存しているので、Windowsで解凍しても文字化けしにくいです。ただ古いMacや別のツールでShift_JISなどに変換された場合は、文字化けすることもあるのでちょっと気をつけてください。
もし文字化けしてしまったら、7Zipの「文字コードを指定して開く」でUTF-8や該当する文字コードを選ぶだけで、Macで作ったZIPも同じ手順でサクッと直せます。
再圧縮するとファイルは壊れない?
- 再圧縮するとファイルは壊れない?
-
7Zipは一度解凍してから内部ファイルを読み込んだうえで再圧縮するので、元のファイルそのものは損なわれません。
ただし、文字化け対策で設定したマルチバイト文字コードやシステムロケールは再圧縮時にも同じにしておくことが大切です。プログラマーとしての経験から、この設定を保てばデータの整合性がしっかり守られるので安心してください。
まとめ

7Zipで文字化けが起きたときは、まずアーカイブを右クリックして「7-Zipで開く」を選び、オプションから文字コードをUTF-8に切り替えて展開します。次に、Windowsの「地域と言語設定」でシステムロケールを日本語(UTF-8対応)に変更すると、さらに文字化けが解消しやすくなります。コマンドライン版の7zを使う場合は、-mcp=65001
を付けてUnicodeモードで実行すると確実です。最後に、解凍後のファイル名をバッチスクリプトやPowerShellスクリプトで一括リネームしておくと、プログラマー業務でも扱いやすいファイル名になります。
この流れを覚えておけば、文字化けに慌てずにサクッと解決できます。ぜひ次回からの作業でも活用して、快適なファイル管理を楽しんでください。