SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

linuxで作ったzipファイルをwindowsで開くと中のファイル名が文字化けしている

日本語版のwindowsのexplorerは、zip圧縮ファイルの中のファイル名がShift_JISだと思って開くらしい。

そのため多くの場合、名前に日本語を含むファイルをlinuxで作ったzip圧縮ファイルにすると、中のファイル名が化けていることが多い。

linux側でファイル名をSJISにしてzipファイルに圧縮してやれば、Windowsのエクスプローラーで開いても問題ない様子。

linux側でのzip圧縮ファイルの作り方

1、phpでファイルを生成するなら、をSJISでエンコードしたファイル名で作成する。
  linuxではconvmvというコマンド(perlスクリプト)でファイル名を変換できる。

$ convmv -r -f utf8 -t sjis 日本語ファイル名.pdf --notest 

2、linuxでzipファイルを作るなら、zipコマンドを利用して作ると楽。
  /tmp/test ディレクトリに圧縮したいファイル(複数)を格納したら、次のようなコマンドでzipファイルが作成できる。

$ cd /tmp/test ; zip -r /tmp/test.zip .

3、windowsで解凍してみると、日本語ファイル名は文字化けしていない。

関連するメモ

コメント