Ich habe das gerade mit dem von Ihnen bereitgestellten Link für mich getestet und eine Datei mit dem Titel Thank You For You Project.zip heruntergeladen, die ich mit dem Passcode 864 mit 7-zip entpacken musste und überhaupt keine Probleme hatte. Hatte ich die richtige Datei?
Herausforderung für die Codierung von Zip-Dateien
HINWEIS: Diese Frage unterscheidet sich von dekomprimieren von ZIP mit der angegebenen Kodierung, da keine dieser Lösungen funktioniert und ich bin nicht sicher, ob ein ordnungsgemäß funktionierendes Entpackungsprogramm sogar den korrekten Dateinamen abrufen kann.
Es gibt eine ZIP-Datei mit einem japanischen Dateinamen. unzip
kann Zeichencodierungen angeben, mit denen normalerweise korrekte Dateinamen abgerufen werden. (Es ist nicht in der man
oder info
-Zeile für Unzip für meine Distribution enthalten, aber es ist in der Hilfeausgabe der ausführbaren Datei enthalten.)
Es funktioniert jedoch nicht für einige ZIP-Dateien, einschließlich dieser. Dies ist eine Sammlung von Dateien für das Animationsprogramm MikuMikuDance. Mehrere Dateien haben einen "Müll" -Dateinamen, wenn sie unzip -O sjis -l archive.zip
mit File-Roller verwendet oder dekomprimiert werden.
Eine andere Datei im Archiv bezieht sich auf die Garbage-Dateinamen, obwohl sie sich auf die Shift-JIS-Codierung des Namens und nicht auf UTF8 bezieht. Es wird versucht, diese Dateien zu laden. Wenn sie falsch benannt werden, können sie nicht geladen werden. Hier stellt sich die Frage, ob die ZIP-Datei so ist, dass die korrekten Dateinamen von einem anderen Programm extrahiert werden könnten und ob sie auf dem System des Uploaders richtig benannt wurden.
Der gewünschte Dateiname lautet 'Figure_ そ の f .fx' (auf Japanisch "other"). Es scheint zwei verschiedene Darstellungen in der zip-Datei zu haben, eine als " ", wobei SJIS als UTF8 interpretiert wird, an anderer Stelle als U + 0082 und einige thailändische Zeichen:
Diese zweite Version ist die Ausgabe von entpacken mit oder ohne -O sjis
Option. Es scheint keine Möglichkeit zu geben, diese auf den ursprünglichen Dateinamen zurück zu konvertieren.
Die ursprüngliche ZIP-Datei kann hier heruntergeladen werden (25 MB) und der Inhalt kann mit dem kostenlosen Programm MikuMikuDance geöffnet werden, obwohl die '.fx' -Datei für MikuMikuEffect verwendet wird, für das mehrere native Bibliotheken in Wine erforderlich sind. Aber vielleicht kann jemand dies ohne die zip-Datei beantworten.
Speichern ZIP-Dateien einen alternativen Dateinamen, der normalerweise nicht verwendet wird? Werden auf japanischen Computern umgekehrte Schrägstriche als Yen-Zeichen angezeigt, die sich auf den nicht verwendeten Dateinamen beziehen? Wenn Sie die Zeichenfolge nehmen, die als "Normalmap-Effekt \ Skin \ Figure_x.fx" angezeigt wird, und als Pipe dorthin weiterleiten, iconv -f sjis -t utf8
lautet die Ausgabe "Normalmap-Effekt ¥ Skin ¥ _ の f .fx". Wikipedia spricht von einem "zusätzlichen Feld"; Wird dies zum Speichern und Abrufen des 'falschen' Dateinamens verwendet?
2 Antworten auf die Frage
Backslashes, die als Yen-Zeichen angezeigt werden, stehen in keinem Zusammenhang. Der zweite Dateiname ist der UTF-8-Dateiname, wie in den Abschnitten 4.5, 4.6 und Anhang D der .ZIP-Spezifikation dokumentiert .
In diesem speziellen Fall wurde der Dateiname an das Verpackungsprogramm in Shift-JIS übergeben, wurde jedoch vom Verpackungsprogramm als ISO-8859-11 oder TIS-620 (Thai-Kodierungen) angenommen. Es wurde angenommen, dass eines der Bytes der Eingabe in Unicode ein anderes Zeichen ist oder in ein anderes Zeichen umgewandelt wurde, um die Wiederherstellung des korrekten Dateinamens zu verhindern.
Wenn das Info-ZIP-Unicode-Pfad-Zusatzfeld verwendet wird, gehen Programme wie 7z oder Info-ZIP unzip
davon aus, dass sie gültig ist, und ignorieren das grundlegende Dateinamenfeld und die -O
Option, mit unzip
der die Quellzeichencodierung festgelegt wird.
Ein Patch, der eine Option zum Überschreiben dieses Verhaltens hinzufügt, wird wahrscheinlich von den Betreuern des Programms begrüßt.
Verwandte Probleme
-
9
Was ist der Unterschied zwischen den Befehlen "su -s" und "sudo -s"?
-
4
Gutes freies Ubuntu Server-VMWare-Image benötigt
-
4
Was sind die Unterschiede zwischen den großen Linux-Distributionen? Werde ich es merken
-
2
Begrenzung der CPU-Auslastung für Flash in Firefox?
-
2
Wie kann ich mein Mikrofon unter Debian GNOME zum Laufen bringen?
-
2
Conky-Setups - Beispiele / Ideen?
-
3
Was sind die Unterschiede zwischen Linux Window Managern?
-
2
ThunderBird / Lichtsynchronisation mit SE k770i
-
4
Linux-Dateisystem
-
6
Vollbild-Flash langsam in KDE 4