AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Unicode probleme

Ein Thema von day · begonnen am 19. Aug 2008 · letzter Beitrag vom 29. Sep 2008
Antwort Antwort
Seite 2 von 6     12 34     Letzte »    
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Unicode probleme

  Alt 19. Aug 2008, 16:51
Zitat von day:
Ok jetzt habe ich dich falsch verstanden. Ich verwende Delphi (win32) und benutze die Standard TLabels komponente
TLabels ist unter Win32 bis Delphi2009 nicht Unicode-Fähig. Hier helfen nur die Kompos von TNTWare (TMS) oder Elpack (LMD).
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
day

Registriert seit: 10. Mai 2004
223 Beiträge
 
#12

Re: Unicode probleme

  Alt 19. Aug 2008, 16:55
Ok vielleicht ist unicode der falsche titel. Ich versuche lediglich chinesische symbole darzustellen und so wie es aussieht hat der xml parser probleme alle symbole richtig auszugeben. Die TLabel komponente ist nicht das Problem, da die symbole ja angezeigt werden.

[EDIT]
Ich habe als Test alle chinesischen symbole im XML-File direkt dem TLabel (Caption) zugewiesen. Es wurden alle symbole im Label richtig angezeigt (auch die symbole die vorher nur ein Fragezeichen waren).
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Unicode probleme

  Alt 19. Aug 2008, 16:59
Du kannst mit TLabel auf einem deutschen System keine vollständige Chinesiche Textdarstellung erreichen. Die verwendung von Charsets/Codepages liefert dir nur eine m.E. Krückenlösung da nur ein Subset von zeichen verwendet werden kann.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
day

Registriert seit: 10. Mai 2004
223 Beiträge
 
#14

Re: Unicode probleme

  Alt 19. Aug 2008, 17:05
Ja du kannst aber im windows unter regional settings die asiatischen sprachen zusätzlich installieren und anschliessend die code page und die "sprachversion der programme" auf chinesisch umstellen.

Anschliessend siehst du z.b. google.cn in chinesisch. Ich denke daher schon das alle symbole angezeigt werden können. Wie auch gesagt sehe ich im xml file alle symbole korrekt. wenn irgend ein symbol nicht erkannt werden würde, dann würde ich es da schon nicht als symbol sehen.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Unicode probleme

  Alt 19. Aug 2008, 18:36
Kannst du mal ein Testprojekt + Test-XML zusammenstellen und hier posten?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
day

Registriert seit: 10. Mai 2004
223 Beiträge
 
#16

Re: Unicode probleme

  Alt 20. Aug 2008, 07:52
Guten Morgen,

Beiliegend habe ich einen kleinen Test gemacht welcher aus einem xml file einen wert ausliest. Ein symbol wird im label nur als ? dargestellt das andere korrekt. Ich habe noch ein printscreen beigelegt, damit man sieht wie die symbole aussehen sollten.

Beim label habe ich als Charset das DEFAULT_CHARSET verwendet. Wenn ich ein anderes verwende (z.B. CHINESEBIG5_CHARSET), stimmen die symbole nicht mehr mit dem XML file überein.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  lNode : IXMLNode;
  lXMLStream : String;
begin

lXMLStream := '<?xml version="1.0" encoding="ISO-8859-1"?> '
              + ' <el name="" value="記住" /> ';

 XMLDocument.LoadFromStream(TStringStream.Create(lXMLStream));
lNode := XMLDocument.ChildNodes.FindNode('el');

label1.Caption := lNode.Attributes['value']; //caption ist ?ס
label2.Caption := '記住';
end;
Komischerweise funktioniert es mit dem ISO-8859-1 (ist westeuropäisch??!!) encoding am besten. Mit dem UTF-8 encoding geht es nicht.

vielen dank für deine Mühe

gruss
Miniaturansicht angehängter Grafiken
printscreen_104.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Unicode probleme

  Alt 20. Aug 2008, 08:02
Dein Quellcode im Forum ist "verhunzt".

und in deinem JPEG weißt du chinesische Zeichen einem (Ansi-)String zu. Diese werden bei Win32 bis D2007 noch nach der ISO1252-Codepage gecastet. Außerdem ist dein XML (falls du die Chinesischen Zeichen unterbekommst) fehlerhaft Codiert. Diese mußt du codieren (AFAIK &<Hexwert>;). Bei UTF8 als encoding-Angabe mußt du natürlich auch die Daten UTF8-Codiert in deinem XML-string ablegen!
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
day

Registriert seit: 10. Mai 2004
223 Beiträge
 
#18

Re: Unicode probleme

  Alt 20. Aug 2008, 08:19
Was meinst du mit verhunzt? Den value siehst du nur wenn dein Betriebssytem auf asiatisch eingestellt hast. (ist dasselbe wenn du google.cn aufrufst). Das mit dem umcodieren ist so eine sache. Die werte sind so abgelegt. Das lässt sich nicht so einfach abändern. oder hast du eine idee?
Wahrscheinlich geht es schneller, wenn ich das xml-file selber parse und die werte auslese.

Was ich aber nicht verstehe ist, warum kann der parser nur ein teil der symbole parsen?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Unicode probleme

  Alt 20. Aug 2008, 08:32
Zitat von day:
Was meinst du mit verhunzt?
Jetzt passt es. Da hat wohl mein Firefox oder die DP versagt.

Zitat von day:
Den value siehst du nur wenn dein Betriebssytem auf asiatisch eingestellt hast. (ist dasselbe wenn du google.cn aufrufst).

Zitat von day:
Das mit dem umcodieren ist so eine sache. Die werte sind so abgelegt. Das lässt sich nicht so einfach abändern. oder hast du eine idee?
Gib doch mal eine Beispiel-XML rüber. Wenn ich deinen String als XML-Datei speichere wird mir jeder XML-Parser diese mit Exceptions um die Ohren schmeißen. Und speicher doch mal lXMLStream (was ja kein Stream ist da hier ja schon dein schönes Chinesisches Zeichen u.U. zerstört wurde) in einer Datei, benenne diese nach XML um und lass sie im IE oder Firefox anzeigen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
day

Registriert seit: 10. Mai 2004
223 Beiträge
 
#20

Re: Unicode probleme

  Alt 20. Aug 2008, 08:57
Hallo,
Ja du hast recht, wenn ich mein xml string in ein xml file kopiere und dann im internet explorer anzeigen lasse, dann sehe ich die symbole nicht mehr. wenn ich allerdings das xml file im wordpad aufmache dann funktioniert es.

Ich vermute ich weiss auch woran das liegt. Unter Regional settings im Reiter "Erweitert" gibt es den Bereich "Sprache für Programme, die Unicode nicht unterstüzen". Da habe ich die Sprachversion auf chinesisch umgestellt. Notepad und Wordpad sind wahrscheinlich genau solche programme und darum interpretieren sie den wert anders als ein internet explorer der ja ein programm ist welches unicode unterstützt.

somit bleibt mir wahrscheinlich nichts anderes übrig als einen eigenen parser zu schreiben.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 6     12 34     Letzte »    


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 13:22 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