zipアーカイブ内の破損したUnicodeファイル名を修正


3

同僚から私が分析する必要のあるデータのzipアーカイブを私にくれましたが、残念ながら、アーカイブの作成時または自分のマシンでの抽出時に、ファイル名が途中で破損していました。

アーカイブには、ファイル名に日本語の文字が含まれている3000個のファイルが含まれています。彼はそれをWindowsマシンで圧縮し、私はMacを使っています。アーカイブをダブルクリックすると、ファイル名は次のようになります。

0001_rt_ñºéå-ïÅí ñºéå-àÍî _ÉAÅ[ÉãÉeÉBÅ[.dat

一方、コマンドラインで 'unzip'を使用すると、同じファイルが次のようになります。

0001_rt_%FB+%C4%EE-%F2%FC%C6-%FB+%C4%EE-%EA%DB%F6-_%E2A%FC[%E2%EF%E2e%E2B%FC[.dat

ファイルの内容は問題ありません(日本語の文字は含まれておらず、数字だけが含まれています)が、元のファイル名を入手する必要があります。

別の都市の別のコンピュータにある元のファイルにアクセスせずに正しいファイル名を復元する方法はありますか?それが可能であれば、私は簡単なPythonスクリプトを書くつもりですが、私は文字エンコーディングについてはあまり知りませんので、どうすればよいかわかりません。


ファイル名が壊れているのは確かですか。これは、OS Xの問題よりもzipアーカイブの問題のように聞こえるからです。 Windowsマシンでファイルが破損しているように見えますか?
Ramhound

それは私が思うケースかもしれません - 私はそれを明確にするために編集しました。それをテストするためのすぐに利用できるWindowsマシンはありません。
Nathaniel

回答:


4

アンアーカイバ OS X用はこれに対処することができる無料のオープンソースのアプリです、そしてそれが正しくそれを検出することができないときそれはあなたがファイル名エンコーディングを要求するでしょう。

これはOS Xであるファイルを解凍するためのデフォルトプログラムを上書きするでしょう、しかし私はそれが内蔵のものよりずっと強力であると思います。


まことにありがとうございます!プロンプトは表示されませんでしたが、ファイル名が正しく表示されるようになりました。
Nathaniel
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.