Web関連コラム

Windowsで作成したZIPファイルをMacで開けない理由

Windowsで作ったZIPファイルをMacの環境の人に渡すと、
「ファイルが開けない」「エラーでファイルが開けない」などと言われたことはありませんか?
特に、パスワード付きのZIPファイルでよく発生するのではと思います。
そんなときの対処法をお伝えできればと思います。

まず結論

ファイル名や、パスワードを保存する際に使われる「文字コード」の違いに原因があります。
ZIPファイルを作成する際、ファイル名、パスワードに使う文字コードが、Windows・Macでそれぞれ文字コードが異なっているためです。
WindowsでZIP圧縮するときは、文字コードを「UTF-8」を指定してZIP圧縮しましょう。
圧縮ソフトの設定次第ですので下記で詳細を説明します。

目次

  1. 文字コードとは?
  2. Windowsのメモ帳を何も知らずに使っている人は要注意
  3. WindowsパソコンでZIP圧縮するときはUTF-8で。ソフトの設定に気を付ける
  4. MacでZip圧縮をしてWindowsにファイルを渡すとき

1.文字コードとは

Mac, Windows, それぞれの標準の文字コードは下記の様になっています。
=========================================
Mac 標準の文字コードは :UTF-8(ユー・ティー・エフ エイト)
Windows(日本語)標準の文字コード:Shift JIS(シフト ジス)
=========================================

UTF-8は「多言語文字コード」で世界共通のコードです。Shift JISは「日本語環境向けの文字コード」です。
例えば、UTF-8には日本語も含め、ハングルやアラビア文字、中国語の簡体文字なども含まれますが、Shift JISの文字コードにはそれが含まれていません。
また、Shift JISの日本語はUTF-8に含まれているわけでもないため、全くの別ものになります。

実際のところ、日本国内で、個人・会社においてもパソコンはWindowsのシェアが多いので、
MacとWindowsでデータのやり取りをすることがあまりなく、普通に仕事をしていても、それほど問題にもされないんじゃないかと思います。
WindowsパソコンはMacに比べて価格が安いので、業務用途では特にwindowsが大多数ですしね。
Shift JISの文字コードは、過去多くのパソコンで採用されていたため、互換性の観点から無くなることはまだないと思いますが、
Windowsでも今後、標準の文字コードとしてShift JISは採用されなくなっていくのではと思います。

2.Windowsのメモ帳を何も知らずに使っている人は要注意

本題から脱線しますが、Windows標準の「メモ帳」を使っている人、いますでしょうか?
文章を書く際はMicrosoft Wordを使うという人は関係ないかもしれませんが、Windows標準のメモ帳は前述の「Shift JIS」しか読み書きできないため、使わない方が良いです。
文章を渡す相手がWindows環境あれば、メモ帳で開けるので問題ありませんが、他の環境でその文章を開くと、文字化けする原因となります。
また、Macで書いた文章は、このメモ帳では開けないと思ってください。

↓説明のためにメモ帳に貼り付けてみましたが、こんなやつです。↓

3.WindowsパソコンでZIP圧縮するときはUTF-8で。ソフトの設定に気を付ける

Windowsは標準で、ZIP圧縮をする機能があります。
しかし前述のように、使われる文字コードが「Shift JIS」なため、Macでそのファイルが読めないことがあります。
実際のところ、Macも標準でShift JISの解凍に対応しているのですが、どうもパスワード付きのZIPファイルの場合はうまく解凍できない場合があります。

そこで、私がお薦めするソフトは、「7-ZIP」です。
7-Zipは、多機能な圧縮・解凍ソフトで、文字コードをUTF-8に指定可能です。
https://sevenzip.osdn.jp/

下記は、実際に7-ZipでZIP圧縮するときのスクリーンショットです。

ファイルを圧縮する際は、ファイルを指定して、
右クリック > 7-Zip > 圧縮 の順に選択していきます。

すると、下記の様な画面が表示されます。
左下の「cu=on」を入力してからZIPファイルを作成しましょう。

細かい使い方は、他のサイトにお任せしておきますが、
「cu=on」についての詳細は、OSDNのドキュメントでは「7-Zip uses UTF-8 for file names that contain non-ASCII symbols.」と書かれています。
日本語に訳すと、「7-Zipは ASCIIコード以外の文字が含まれる場合にはファイル名にUTF-8を使う」です。
https://sevenzip.osdn.jp/chm/cmdline/switches/method.htm

4.MacでZip圧縮をしてWindowsにファイルを渡すとき

MacからWindowsにファイルを渡す際、恐らくファイル名が文字化けした状態になります。
こちらも同じように、Windowsに合わせて文字コードをShift JISを指定できるソフトを使うといいと思います。

まとめ

文字コードを意識して、相手の環境を考えること。
今回はWindowsからMacへZIPファイルを送る際に起こる問題を記載しました。
MacからWindowsでも、同様な問題が起きる可能性が当然ありますので注意してください。

-Web関連コラム
-, , , ,