Mac OSでzipファイルを解凍する際に
エラー22 引数が無効です
というエラーが出て解凍できずに失敗して困ってないだろうか。
実はこのエラーには原因がある。
本記事では「エラー22 引数が無効です」となる原因と対処方法について紹介する。
本記事の対象者
Macをよく使うユーザーには必見の内容だ。
「エラー22 引数が無効です」の現象
現象としては前述の通り、Mac OSでzipファイルを解凍する際に
エラー22 引数が無効です
というエラーが出て、zipファイルの解凍に失敗する。
Macでzip解凍時に「エラー22 引数が無効です」となる原因
この現象は2019/10/10にMac OSがCatalinaにアップデートした後から発生しているようだ。
Mac のOSをCAtalinaへ昨日アップデートしたら、zipファイルが展開できなくなりました。
アーカイブユーティリティ エラー22 引数が無効
と出ます。今まで出たことなかったです。対処法ありますか?
OSによるものだとするとCatalinaにアップデートしたらオシマイのように思えるが、対処方法は存在する。
エラー22の真の原因は文字コード
解凍エラーはWindowsで圧縮したzipファイルでのみ発生し、Macで圧縮したzipの解凍時には起こらない。
つまりWindowsとMacの圧縮時の違いに起因するのだが、異なるOS間で問題となるのはまず文字コードだ。
WindowsのデフォルトはShift-JIS、Macや他のUnix系OSのデフォルトはUTF-8。
この違いによってエラーが起こることが多く、今回も文字コードに起因している。
Macの標準機能はzipファイルをUTF-8の設定で解凍しようとするが、中身はShift-JISなのでエラーになってしまっている。
以前書いた文字化けの記事と同じである。
あわせて読みたい
従って対処方法も変わらない。
対処1 適切な解凍ソフトを使う
Mac OS標準の圧縮解凍機能ではなく、適切な解凍ソフトを使って解凍すると文字コードの違いについても配慮されているのでエラーは発生しない。
解凍ソフトには「Zip File Unarchiver」や「The Unarchiver」がある。
対処2 適切な圧縮設定を使う
Windows側で圧縮する際にUTF-8の設定にすることでもエラーを回避できる。
7-Zipで圧縮する際に、「パラメータ」の項目に「cu=on」を設定することでUTF-8で圧縮されるようになる。
7-zip パラメータ cu=on |
---|
UTF-8で圧縮されたzipファイルはMac OSで解凍してもエラーにはならない。
Macでzip解凍時に「エラー22 引数が無効です」となる原因 まとめ
Macでzip解凍時に「エラー22 引数が無効です」となる原因と対処法については以下の通り。
まとめ