Windowsで作成したzipファイル中のファイル名はShift_JISになる

Windowsで作成したzipファイル中のファイル名の文字コードが何になるかを調べたメモ。

※ファイルの中身ではなくて、日本語のファイル名の文字コードについての説明です。

  • Windows NT系のOS(xp,vista等)は、カーネル内部の文字コードとしてUnicodeを使用。
  • ファイル名に関してはNTFSに保存される場合のみUnicodeで、FAT32の環境ではShift_JISに変換されて保存。
  • アプリケーションにファイル名を渡す操作があった場合、NTFSに保存されていたファイル名はUnicodeからShift_JISに変換されて渡される。
  • そのためNTFSファイル上に作成されていた日本語ファイル名のファイルをzipファイルとして圧縮すると圧縮された中身のファイル名はShift_JISとなって保存される。

以上の事情により、NT系のWindowsで作成したzipファイルの中身のファイル名は、もともとがUnicodeであったとしてもShift_JISとなってしまうということらしいです。

Twitterでも情報配信中!




コメントを残す

メールアドレスが公開されることはありません。



※コメントは承認制です。承認されるまで表示されません。