Sonderzeichen in Dateinamen

  • Das Thema ist schon einige Male angesprochen worden, aber ich habe keine Lösung dazu finden können.

    Das Problem tritt bei einem Freund auf, wenn z.B. PDF-Dateien im Namen landestypische Sonderzeichen enthalten. Im Dateinamen in der Statusleiste wird das Sonderzeichen in der typischen %-Notation angezeigt. Das Dokument lässt sich nicht anzeigen oder herunterladen.

    Auf meinem System wird der gleiche Link mit dem Sonderzeichen angezeigt und kann problemlos geöffnet werden. Ich habe keine Idee, was zwischen beiden Installationen so verschieden ist, dass es zu diesem Effekt führt.

    Hat jemand eine Idee dazu?

    Mike

  • Korrektur
    In der Statusleiste und in den Eigenschaften sehe ich das gleiche wie auf dem anderen System.
    Statusleiste: http://www.poczta-polska.pl/znaczki/pl/pdfy/PEŁNOMOCNICTWO A.pdf
    Eigenschaften: http://www.poczta-polska.pl/znaczki/pl/pdf…CNICTWO%20A.pdf

    Bei mir geht die Anzeige im FF+Adobe, auf dem anderen System nicht.

    Wenn ich die Datei bei mir runterlade und speichere, muss ich zum Öffnen allerdings auch des Ł entfernen, weil Windows sonst meckert.

    Mike

  • Zitat von Milenke

    Da passt was nicht.
    Der Link "Statusleiste" in die Adressleiste kopiert funktioniert.
    Der Link "Eigenschaften" funktioniert nicht, weil dieser falsch codiert ist. Anstelle des %A3, Zeichen für britisches Pfund, muss %C5%81, das polnische L mit dem Schrägstrich, stehen. Testseite: http://de.wikipedia.org/wiki/Łódź

    Mal orakelt:
    Da das Zeichen bei der Tastatur auf der Taste liegt, auf der bei der deutschen Tastatur das Ö liegt, dürften landessprachliche Einstellungen eine Rolle spielen.

    Zitat von Milenke

    [...], muss ich zum Öffnen allerdings auch des Ł entfernen, weil Windows sonst meckert.

    Ein polnisch eingestelltes Windows sollte damit keinerlei Problem haben.

    Bei den deutschen Umlauten gab es mal ein Thema http://www.firefox-browser.de/forum/viewtopic.php?t=55183 bezüglich "Ölfarbe".
    Je nachdem, wie in about:config der Parameter network.standard-url.encode-utf8 eingestellt ist, wird die Seite erreicht. Der Standardwert ist false

    P.S. Setzt man den Wert auf true, sind die Links von Wawuschel mit den echten Umlauten auch nicht erreichbar.

  • Hi,
    es scheint wirklich an der falschen Umsetzung des Ł zu liegen.
    Kopiere ich den Link und füge ihn in die Adressleiste ein, dann kommt das falsche %A3 und eine falsche Seite. Ändere ich nach %C5%81 kommt die richtige Seite.

    Komisch ist jetzt allerdings, dass wenn ich den Link direkt anklicke, das Dokument richtig geöffnet wird. Genau das passiert auf den anderen System nicht, da kommt immer die falsche Seite. Ich konnte das Problem jetzt auf einem zweiten System bei mir reproduzieren. Das System lauft auf XP. Das System auf dem es geht läuft auf Vista.

    Die Frage ist jetzt, wer für die falsche Umsetzung des Ł nach %A3 zuständig ist. Es muss ja anscheinend irgendwo etwas geben, was den Unterschied auslöst. network.standard-url.encode-utf8 steht auf beiden Systemen auf false.

    Ich habe mal auf Vista im IE 7.0 getestet wie der sich verhält. Die Adresse wird korrekt nach http://www.poczta-polska.pl/znaczki/pl/pdfy/PEŁNOMOCNICTWO%20A.pdf umgesetzt. Auch auf meinen anderen System funktioniert es mit dem IE 6.

    Mike :?

  • Zitat von Milenke

    Die Frage ist jetzt, wer für die falsche Umsetzung des Ł nach %A3 zuständig ist. Es muss ja anscheinend irgendwo etwas geben, was den Unterschied auslöst.

    Je nach dem, welche Zeichenkodierung das System intern benutzt. Die älteren Systeme benutzen ASCII und/oder ANSI mit einer Breite von 8 Bit. In diese 8 Bit wurden auch die jeweiligen nationalen Sonderzeichen gequetscht.

    Nun sind in der Norm für die URI/URL nicht nicht alle Zeichen zugelassen und die Zeichen, die man trotzdem benötigt sind in die Form %xx zu übersetzen. Liegt jetzt ein "eigenes" nationales Sonderzeichen vor, in 8 Bit, wird daraus %xx. Liegt dagegen ein "fremdes" nationales Sonderzeichen vor, muss es bereits in 16 Bit verarbeitet werden und das wird dann in %xx%yy übersetzt.

    Setze bei dem XP network.standard-url.encode-utf8 auf true und Du wirst die Seite erreichen, dafür wiederum andere nicht.

  • Wieso ist dann aber ein Unterschied, zwischen Link anklicken, was die PDF richtig runterlädt und Link kopieren, der eingefügt nicht geht?

    Es bedeutet doch, das der angeklickter Link anders verarbeitet wird, als die Routine, die den Link in die Zwischenablage kopiert.

    Wenn ich auf XP network.standard-url.encode-utf8 auf true setze, dann wird der kopierte Link richtig kodiert.

    Listigerweise funktioniert auf meinem XP-System mit network.standard-url.encode-utf8 auf false der Download mit PDF Download. Der normale Download dafür nicht.

    Suspekt, suspekt. Ich kann kein System erkennen.

    Mike

  • Zitat von Milenke

    Wieso ist dann aber ein Unterschied, zwischen Link anklicken, was die PDF richtig runterlädt und Link kopieren, der eingefügt nicht geht?

    Da die Adressleiste primär von der Tastatur aus gefüllt wird, wird für Inhalte aus der Zwischenablage die identische Kodierung der Tastatur benutzt. Dabei kann eine Wandlung stattfinden. Das entspricht insgesamt einer Neueingabe.

    Der geklickte Link hingegen hat den Firefox nie verlassen und wird somit keiner Wandlung unterworfen.

    Zitat von Milenke

    Listigerweise funktioniert auf meinem XP-System mit network.standard-url.encode-utf8 auf false der Download mit PDF Download. Der normale Download dafür nicht.

    Die Interna vom PDF Download kenne ich nicht.

    Da ihm aber die URL vom Firefox übergeben wurde und er sie letztendlich an den Firefox zurückgibt, könnte dabei eine Wandlung stattfinden.

  • Zitat

    Da die Adressleiste primär von der Tastatur aus gefüllt wird, wird für Inhalte aus der Zwischenablage die identische Kodierung der Tastatur benutzt.


    Das würde aber bedeuten, dass in der Zwischenablage etwas anderes steht, als in der Adressleiste ankommt.

    Mike[/quote]

  • Zitat von Milenke

    [...] dass in der Zwischenablage etwas anderes steht, [...]

    Nein, der Inhalt ist identisch.
    Nur es wird die Zeichenkodierung gewählt, die der Eingabe von der Tastatur entspricht.

    Stelle Dir das Durcheinander vor, wenn Du bei dem Zeichen Ł in der Adresszeile intern mal ein %A3 oder ein %C5%81 hättest, je nachdem von wo das Zeichen kommt.

  • Wo kann ich die eingestellte Zeichenkodierung prüfen? Bin ich bisher nicht drüber gestolpert. Bei den Rechnern ist überall die deutsch Tastatur eingestellt. Oder hat sich da bei Vista etwas geändert?

    Mir geht es einfach darum, wie feststellen kann, warum sich die Systeme unterschiedlich verhalten.

    Mike

  • Linux war bereits utf-8 fähig, Vista ist jetzt utf-8 fähig, XP ist es nur teilweise. Letzteres hast Du ja auch an der gespeicherten Datei erkannt, die Du nicht öffnen konntest.

    Die Seite im Wiki http://de.wikipedia.org/wiki/☭ wirst Du unter XP nur mit Problemen speichern und laden können.

    Nachtrag: Zur Prüfung selbst habe ich keine Ahnung

  • Irgendwie passt da einiges bei mir nicht zusammen.

    Auf dem Vista-System und einem XP-System sehe ich im Totalcommander statt dem Ł ein Platzhalterzeichen und Acrobat kann die Datei nicht öffnen. Kann ggf. am Acrobat Pro 7.0 liegen.

    Auf einem anderen XP-System sehe ich im Totalcommander das Ł und kann die Datei mit AcrobatReader 8.1.2 öffnen.

    Wieso auf einem XP und Vista im Totalcommander der Platzhalter kommt und auf einem anderen XP das richtige Zeichen kann ja eigentlich nichts mit Acrobat zu tun haben. Wenn Vista wirklich utf-8 fähig ist, wieso kommt da ein Platzhalter und bei dem einen XP das Zeichen. :?

    [Haare raufen]

    Mike

  • Durch die Einführung eines weiteren Programms kommst Du der Problemursache in keinster Weise näher.

    Es reicht der Firefox und die besagten Seite um herauszufinden, inwieweit sich die Systeme unterscheiden.

    Mit Vista kann ich aber nicht dienen.