Da das Codierungsformat im Zip-Format nicht angegeben ist, lautet die Codierung in den unter Windows generierten Zip-Dateien GBK/GB2312 usw. Daher weisen diese Zip-Dateien beim Dekomprimieren unter Linux verstümmelte Zeichen auf, da die Standardcodierung unter Linux ist UTF8.
Im Internet kursiert derzeit eine Methode zum Entpacken von -O cp936, einige Entpacker verfügen jedoch nicht über die Option -O.
Die von mir verwendete Version, die unzip 6.0 Debian Modified Version, verfügt über diese Option
Aufgrund von Codierungsproblemen werden die chinesischen Dateien in der ZIP-Datei beim Dekomprimieren unter Linux verstümmelt angezeigt
Wenn Sie Archlinux verwenden, installieren Sie unzip-natspec mit AUR, um dieses Problem zu lösen.
Verwenden Sie zu diesem Zeitpunkt unzip xxx.zip, um die Datei korrekt zu dekomprimieren
und führen Sie sie dann aus im File-Roller-Archivmanager, Chinesisch Der Name ist immer noch verstümmelt Es wird gesagt, dass es daran liegt, dass File-Roller bevorzugt p7zip verwendet
Das Problem ist nach dem Löschen von p7zip gelöst
Jedoch, Ich möchte auch gleichzeitig das p7zip-Softwarepaket verwenden. Weiß jemand, wie man dieses Problem löst?
Laden Sie den Code hier herunter, um diese Logik zu studieren und zu finden
/* give priority to 7z, unzip and zip that supports ZIP files better. */if ((strcmp (mime_type, "application/zip") == 0)|| (strcmp (mime_type, "application/x-cbz") == 0)) {if (_g_program_is_available ("7z", check_command)) {return capabilities; }if (!_g_program_is_available ("unzip", check_command)) { capabilities |= FR_ARCHIVE_CAN_READ; }if (!_g_program_is_available ("zip", check_command)) { capabilities |= FR_ARCHIVE_CAN_WRITE; }return capabilities; }
Es scheint, dass es keine gute Möglichkeit gibt, außer das zu patchen Code
Endgültige Lösung, ich habe festgestellt, dass es in AUR auch ein ähnliches Softwarepaket p7zip-natspec gibt
Die Installation dieses Pakets sollte das Problem perfekt lösen, da ich das Problem mit der oben genannten Methode gelöst habe , das werde ich nicht mehr versuchen
Das obige ist der detaillierte Inhalt vonWie kann das Problem verstümmelter Zeichen beim Dekomprimieren von Zip-Dateien unter Linux gelöst werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!