macOS Catalinaで特定のエンコーディングを含んだzipファイルが、アーカイブユーティリティで解凍できない問題は「macOS 10.15.3 Catalina」でも修正されていないので注意を。

スポンサーリンク

 macOS Catalinaで特定のエンコーディングを含んだzipファイルが、アーカイブユーティリティで解凍できない問題は「macOS 10.15.3 Catalina」でも修正されていないので引き続き注意してください。詳細は以下から。

ArchiveUtility

 Appleは現地時間2020年01月28日、macOS Catalinaの3度目のアップデートとなるmacOS Catalina 10.15.3 Build 19D76をリリースしましたが、同バージョンでもmacOS Catalinaリリース当初から確認[.0, .1, .2]されている、特定のzipファイルがmacOSデフォルトのアーカイブユーティリティで解凍できない不具合が引き続き存在します。

macOS 10.14 MojaveとmacOS 10.15 Catalinaのアーカイブユーティリティ

macOS 10.14.6 MojaveBuild 18G103とmacOS 10.15.3 Catalina Build 19D76のアーカイブユーティリティ

 この問題は日本語のShift JISや簡体字中国語のGB 2312エンコーディングされたファイルやそれを含むフォルダをWindows環境で圧縮すると「エラー22 – 引数が無効です。」というエラーが出て解凍できないというもので、macOS 10.15.3ではアーカイブユーティリティのバージョン自体もmacOS 10.15.2に同梱されているバージョン10.15 (128.2.1)からアップデートされていないため、

アーカイブユーティリティ・バージョン10.15 (128.2.1)

エラー22 – 引数が無効です。(error 22: invalid argument)

問題に遭われている方は引き続きunzipコマンドやエンコードセレクターが利用可能なKekaThe UnarchiverStuffIt Expanderなどのサードパーティ製・圧縮解凍アプリを利用してみてください。

Keka for Mac

スポンサーリンク

おまけ

 この件に関してAppleの方と少し話す機会がありましたが、AppleはmacOS Catalinaのアーカイブユーティリティで7z (7-zip)の解凍をサポートしており、zipアーカイブの解凍をこの7zライブラリへ移行したようで、7zは以前からいくつかのzipファイルを開けない問題が確認されているため、この問題の原因もそこにあるのではないかという話でしたが、

なぜ7-ZipではいくつかのZIP圧縮ファイルを開けないのですか?
そのような問題の99%は、そのアーカイブのヘッダーが間違っているためです。ほかのZIPプログラムは、間違ったヘッダーでもエラーを出力するだけで開いています。もしそのようなアーカイブであったら、7-Zipの開発者に問い合わせないでください。その代りに、その間違ったヘッダーのアーカイブを作ったプログラムを特定し、その作者にZIPと互換がないことを教えてあげてください。
一方で、たとえばWAVPack (WinZip)のような、7-Zipでサポートしていない方法でエンコードされたZIPアーカイブもあります。

圧縮・解凍ソフト 7-ZipのFAQより – 7-Zip

その場合はこの問題が根本的に解決されるまでかなり時間がかかる、またはAppleは関知しないと思われるので、各企業や大学でmacOSをお使いの方はWindowos PCとファイルをやり取りする際に注意してください。

ただし、厄介なことにmacOS 10.15 Catalinaで解凍できないzipファイルはmacOS 10.14 Mojave以下は解凍できるので、問い合わせがあった場合は始めにmacOSのバージョンを聞くことをおすすめします。

コメント

  1. 匿名 より:

    フォーラム情報を添えてサポートに報告しましたが無視放置されています。
    Appleのソフトウェアサポートの劣化具合には目を覆いたくなりますね。ハードウェアサポートはしっかりしてるんですが。

  2. Shiki Suen より:

    この問題はmacOSのFeedback Assistantに登録しないと永遠に解決できないと思います。
    連中はFeedback Assistantに登録された問題だけを解決しています。

  3. 匿名 より:

    Tim Cook「それでも年1回のメジャーアップデートはやめへんで!」

    ↑は?

  4. 匿名 より:

    >Windows環境で圧縮すると
    >そのアーカイブのヘッダーが間違っているためです。

    .ZIP アーカイブを作成したツール側の問題、かつ macOS が「壊れた」ZIP を受け付けない。って事でしょ?
    macOS が直す必要はない。

    で「どの」Windows が壊れた .ZIP を作るのかな?
    Windows 10 あたりだとちゃんと UTF8 セレクタ入れてくれるはずなんだけど
    古い Windows が、無作法な .ZIP を作るのは結構有名な話で、故にサードパーティー アーカイバーは、力業(エンコードの推測とか)で解決しているんだけど、macOS が、古い無作法なフォーマットに合わせる義務はないでしょう。

    • 匿名 より:

      いや、そうとも言えないっぽい。
      unzip -Zや zipinfoコマンドで見るとセレクタが入っていても日本語(SJIS)エンコードを含むzipファイルでエラーが出るので、多分macOS側の問題。
      ttps://qiita.com/yugo-yamamoto/items/a5f1f0a4c0d3f97b8aab

      7z落として試してみたけど、アーカイブユーティリティが仲間外れ。
      7zでzip圧縮 → Windows標準で展開 OK
      7zでzip圧縮 → macOS標準で展開 NG
      Windows標準でzip圧縮 → macOS標準で展開 NG
      Windows標準でzip圧縮 → 7zで展開 OK

  5. 匿名 より:

    ダメだこりゃ。
    他のバグは、しばらく放置なのかな。iOS含めて。
    せめて、最新機種でも1つ前のOSが動けば何とか待てるのにね。

  6. 匿名 より:

    これだから二バイト言語は

  7. 匿名 より:

    1.WindowsでSJISのzipを作る。
    2.macOSへ送って1.のzipをzipする。
    3.Windowsへ送り返す。
    4.誰も解答できないzipの出来上がり!(´口`)
    実際にあった怖い話です。