QTextBrowser und Link mit Umlaute

Alles rund um die Programmierung mit Qt
Antworten
RD1978
Beiträge: 84
Registriert: 5. Juni 2007 08:00
Wohnort: Stralsund (DDR)

QTextBrowser und Link mit Umlaute

Beitrag von RD1978 »

Hallo,

ich brauch mal eure Hilfe.

Also ich habe ein QTextBrowser in dem ich mit (<a href="link"></a>) die Links einfüge. Beim anklicken geht dann der Standardbrowser auf und der Link wird auch aufgerufen.

Das problem ist, wenn der Link Umlaute enthält, dann werden diese in der Browserzeile als UTF-8 aufgerufen.

Beispiel:
Aus (http://www.seite.de/häuser.html) wird dann (http://www.seite.de/h%C3%A4user.html).
Die Seiten die ich abrufen möchte sind aber ISO-8859-1, demnach müsste der Link denk ich so aussehen (http://www.seite.de/h%E4user.html)

Die Links die ich in den Textbrowser einfüge, speicher ich in einer Datei, die ich mit einem QSettings-Objekt lese bzw. schreibe. Dort steht nach dem schreiben z.B.: type=h\xe4user

MfG RD1978
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Der Inhalt einer Seite hat nichts mit der URL zu tun. Urls sollten eigentlich keine Umlaute enthalten, also ist das verhalten imho korrekt.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
RD1978
Beiträge: 84
Registriert: 5. Juni 2007 08:00
Wohnort: Stralsund (DDR)

Beitrag von RD1978 »

Danke für Deine Antwort,

ich selbst würde auch keine Umlaute in der URL verwenden um solche Probleme von vorn herein auszuschliessen, leider hab ich kein Einfluß auf die Website.

Komisch ist nur, wenn ich im Firefox die URL mit Umlaut eingebe, dann macht der das richtig.

MfG RD1978
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Es gibt seit ein paar Monaten (Jahren?) einen Standard für nicht ascii-zeichen in url's, komme aber gerade nicht auf den Namen.

Versuche mal deinen Link mit Hilfe von http://doc.trolltech.com/4.3/qurl.html# ... ntEncoding oder direkt mit QUrl() und QUrl().toEncoded() umzuwandeln ob es dann evtl. geht.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
RD1978
Beiträge: 84
Registriert: 5. Juni 2007 08:00
Wohnort: Stralsund (DDR)

Beitrag von RD1978 »

Hab ich gestern auch schon versucht, geht auch nicht.

MfG RD1978
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Jetzt ist mir der Standard wieder eingefallen --> punycode

Suche mal bei google danach. Vielleicht hilft es die url erst per Hand in punnycode zu wandeln?
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
RD1978
Beiträge: 84
Registriert: 5. Juni 2007 08:00
Wohnort: Stralsund (DDR)

Beitrag von RD1978 »

Danke,

ich werd mich dann mal damit beschäftigen.
Antworten