AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"
Thema durchsuchen
Ansicht
Themen-Optionen

idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"

Ein Thema von Bladefire · begonnen am 7. Jan 2015 · letzter Beitrag vom 26. Jan 2015
Antwort Antwort
Seite 1 von 2  1 2      
Bladefire

Registriert seit: 30. Jun 2014
67 Beiträge
 
#1

idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"

  Alt 7. Jan 2015, 18:31
Hallo,

ich habe ein problem beim darstellen des quellcodes den ich zuvor heruntergeladen habe. Die Umlaute werden nicht korrekt angezeigt. (sie werden als 2 Zeichen dargestellt. Darum denke ich, dass delphi den text in einer kodierung darstellt, die kleiner als iso-8859-15 ist)

Code:
IdHTTP1.Request.AcceptCharSet := 'iso-8859-15,iso-8859-1, utf-8, utf-16, *;q=0.1';
memo1.text := idhttp1.get(URL);

Showmessage(idhttp1.Response.charset)
(*
  = charset=iso-8859-15
*)
Über antworten freue ich mich sehr.

Lg Simon
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"

  Alt 7. Jan 2015, 19:23
wie schauen denn die Sonderzeichen aus? Ich tipp mal das du einfach UTF8To(Wide)String aufrufen musst.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Bladefire

Registriert seit: 30. Jun 2014
67 Beiträge
 
#3

AW: idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"

  Alt 7. Jan 2015, 19:46
hat leider nicht funktioniert.



ß wird als Ć dargestellt und die bitfolge würde so aussehen: //(11011111) DF

Die großen Umlaute sind ebenfalls betroffen.

ü wird als ĆŒ dargestellt und die bitfolge würde so aussehen: //(11111100)FC

ä wird als Ć€ dargestellt und die bitfolge würde so aussehen: //(11100100) E4

ö wird als ƶ dargestellt und die bitfolge würde so aussehen://(11110110) F6

sofern man darauf vertraun kann, dass ich die Daten ISO 8859-15 kodiert erhalten habe.

Geändert von Bladefire ( 7. Jan 2015 um 20:31 Uhr)
  Mit Zitat antworten Zitat
Bladefire

Registriert seit: 30. Jun 2014
67 Beiträge
 
#4

AW: idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"

  Alt 8. Jan 2015, 14:03
*push
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"

  Alt 8. Jan 2015, 14:12
Nach dem Mapping von http://en.wikipedia.org/wiki/ISO/IEC...rom_ISO-8859-1 würde ich sagen das eigentlich UTF8-Codierte Daten geliefert wurden, aber durch das Mapping diese kaputt gemacht wurden.
würde

ü -(UTF8)-> Ć¼ -(Mapping)-> ƌ

Evtl. reicht es einfach das Mapping umzudrehen Œ -> ¼ um dann UTF8 nach (Wide)String zu wandeln.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Bladefire

Registriert seit: 30. Jun 2014
67 Beiträge
 
#6

AW: idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"

  Alt 8. Jan 2015, 15:09
Danke für die Antwort.

ich fasse es nochmal zusammen, ob ich es auch richtig verstanden habe.

ö währe in utf-8: 11000011 10110110

11000011 10110110 ist Jedoch in ISO 8859-15: ƶ


ü währe in utf-8: 11000011 10111100

11000011 10111100 ist Jedoch in ISO 8859-15: ĆŒ

Schaut gut aus!

Ich erhalte die daten von der Webseite in utf-8 und sie werden fälschlicherweise als ISO 8859-15 kodiert betrachtet.

Wie kann ich das mapping umdrehen?


Ich dachte dass ich es so machen kann, damit der text als utf-8 betrachtet wird.
Code:
SetCodePage(Text,65001,false);
memo1.text := Text
Der Buchstabe "ö" wird danach korrekt angezeigt.
ß = �?
ä = Ą
ü = Ģ

lg Simon

Geändert von Bladefire ( 8. Jan 2015 um 15:14 Uhr)
  Mit Zitat antworten Zitat
Bladefire

Registriert seit: 30. Jun 2014
67 Beiträge
 
#7

AW: idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"

  Alt 8. Jan 2015, 16:47
*push
  Mit Zitat antworten Zitat
Bladefire

Registriert seit: 30. Jun 2014
67 Beiträge
 
#8

AW: idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"

  Alt 8. Jan 2015, 18:21
Ich wollte außerdem noch Fragen:

Woher hast du das "Ć¼"?
  Mit Zitat antworten Zitat
Bladefire

Registriert seit: 30. Jun 2014
67 Beiträge
 
#9

AW: idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"

  Alt 8. Jan 2015, 22:38
Ich habe mir das ganze (das was ich von der Webseite gefunden habe, und in einen ganz normalen string ohne bearbeitung ausgegeben habe) nochmals in einen hexadezimaleditor (NEXT-Soft HEX Editor) angeschaut.


Buchstabe:
ä
Stattdesen angezeigtes:
Ć€
utf-8 Hexadezimal Code von ä
c3 a4
utf-8 Hexadezimal Code von ä würde als ISO-589-15 ergeben:
Ć€
Im Hexadezimaleditor angezeigtes:
C3 80
UTF-8 Buchstabe des im Hexdezimaleditor angezeigtem:
Ą

Buchstabe:
ü
Stattdesen angezeigtes:
ĆŒ
utf-8 Hexadezimal Code von ü
c3 bc
utf-8 Hexadezimal Code von ü würde als ISO-589-15 ergeben:
ĆŒ
Im Hexadezimaleditor angezeigtes:
c3 8c
UTF-8 Buchstabe des im Hexdezimaleditor angezeigtem:
Ģ

Was sagt mir das?

Geändert von Bladefire ( 8. Jan 2015 um 22:54 Uhr)
  Mit Zitat antworten Zitat
pelzig
(Gast)

n/a Beiträge
 
#10

AW: idhttp1.get() - iSO 8859-15 - Problem - darstellung von "öÖäÄßÜü"

  Alt 9. Jan 2015, 15:28
Ich habe nicht die geringste Ahnung, was dir das sagt!

Wie ersetzt man denn in einem String alle "ƀ" durch ein "ä", wenn man keine Ahnung hat, was gerade - wie auch immer codiert - heruntergeladen wurde?

Man schaut sich an, was z.B. ein "ä" sein sollte und vergleicht es mit dem Heruntergeladenem.

Von Hinten durch die Brust ins Auge sind das - für die Deutschen Sonderzeichen - halt sieben Stringreplaces (äöüÄÖÜß).

Seit wann kann man sich beim Herunterladen einer HTML-Datei oder einer E-Mail eigentlich darauf verlassen, daß sie richtig codiert ist?

Hab' ich da was verpasst?

MfG
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz