Shift_JIS なファイル名を含む zip を展開するとファイル名が壊れる
_ [comp] Shift_JIS なファイル名を含む zip を展開するとファイル名が壊れる
Windows から持ってきた Shift_JIS なファイル名を含む zip を展開すると、出てきた Shift_JIS なファイル名を convmv を使って変換できないなーと思っていたら、実は unzip が余計なことをしてくれていたそうだ。> 日本語のファイル名を含んだzipアーカイブが、unzipで展開すると文字化けすることがある そちらで出ていた対処法で、unzip のソースの unzpriv.h 中の Ext_ASCII_TO_Native マクロを潰してしまえばよいようだ。
#ifndef Ext_ASCII_TO_Native
の手前に、
#define Ext_ASCII_TO_Native(string, hostnum, hostver, isuxatt, islochdr)
を追加して unzip をビルド。これを使ったところ、Shift_JIS なファイル名が壊されなくなった。
つづき: