Probleme mit Sonderzeichen und Modul zipfile

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
HarryH
User
Beiträge: 266
Registriert: Freitag 23. Mai 2003, 09:08
Wohnort: Deutschland

Hallo,

Ich habe folgendes Problem:
Wenn ich über das Modul 'zipfile' ein Archiv erstelle und dabei einige Dateinamen, der zu packenden Dateien, Sonderzeichen (ä, ü, ß ...) enthalten, werden diese in anderen Archivmanagern (z.B. Winzip ...) falsch dargestellt.
Umgedreht besteht das gleiche Problem.
Ich schätze mal das diese ein anders Encoding verwenden.
Wie kann ich das Problem beheben?

Wäre dankbar für eure Hilfe :D

Harry
Gruß, Harry
BlackJack

Na einfach die gleiche Kodierung auf beiden Seiten verwenden. :-)

ZIPs kennen keine Kodierung, die Dateinamen sind einfach eine Folge von Bytes. Wie diese interpretiert werden ist Sache der Anwendung(en).
HarryH
User
Beiträge: 266
Registriert: Freitag 23. Mai 2003, 09:08
Wohnort: Deutschland

Hi BlackJack,

Danke für deine schnelle Antwort.
Wie kann ich herausfinden welche Codierung verwendet wird und wie lege ich diese fest?
Gruß, Harry
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Aus http://docs.python.org/dev/lib/zipfile-objects.html :
Note: There is no official file name encoding for ZIP files. If you have unicode file names, please convert them to byte strings in your desired encoding before passing them to write(). WinZip interprets all file names as encoded in CP437, also known as DOS Latin.

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
HarryH
User
Beiträge: 266
Registriert: Freitag 23. Mai 2003, 09:08
Wohnort: Deutschland

Wer lesen kann ist klar im Vorteil :oops:
Danke Jens!
Gruß, Harry
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Naja, ist in der developer-Version der Doku, da hättest du bestimmt nicht nachgesehen... Ich weiß das auch nur, weil ich selber Angestoßen hab, das diese Notiz in die Doku kommt :)

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
HarryH
User
Beiträge: 266
Registriert: Freitag 23. Mai 2003, 09:08
Wohnort: Deutschland

Kann ich mein Script so umstellen, dass es auch automatisch mit dem Codec CP437 arbeitet?
Wenn ja, Wie?
Was ist denn die beste Alternative um die Dateinamen korrekt darzustellen?
Gruß, Harry
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Schau mal hier: [wiki]Unicode[/wiki]

und hier: http://www.python-forum.de/topic-5580.html

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Antworten