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 1 von 6  1 23     Letzte »    
day

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

Unicode probleme

  Alt 19. Aug 2008, 15:52
Hallo,
Ich habe folgendes Problem:
Ich möchte aus einem XML file einzelne Strings auslesen, welche chinesische symbole enthalten. Wenn ich mir das XMLFile ausgeben lasse (z.b. im Debugger oder log file), dann werden die symbole auch korrekt dargestellt. Wenn ich jedoch die XML struktur über die Nodes auslese, dann werden gewisse symbole durch Fragezeichen (?) ersetzt (allerdings nur ein paar wenige).

Hat jemand eine idee woran das liegen kann?


folgendermassen lese ich die nodes aus.
Delphi-Quellcode:
 XMLReader.LoadFromStream(TStringStream.Create(XMLFilte)) //XMLReader ist TXMLDocument
 .
 .
 .

 lStr := Node.Attributes['value']; // Node ist IXMLNode
Wenn ich Debugger auf dem Attributes bin, dann sehe ich noch dir korrekten Symbole. In der Variable lStr sind anschliessend allerdings teilweise Fragezeichen enthalten.

Ich habe auch schon probiert das ganze einem WideString zuzuweisen, allerdings funktionierts dann gar nicht mehr.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Unicode probleme

  Alt 19. Aug 2008, 15:54
Welchen Typ hat lStr?
Markus Kinzler
  Mit Zitat antworten Zitat
day

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

Re: Unicode probleme

  Alt 19. Aug 2008, 16:11
Ist ein normaler String.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Unicode probleme

  Alt 19. Aug 2008, 16:12
Zitat von day:
Ist ein normaler String.
Da mußt du bis Delphi 2009 warten das der Datentyp String Unicodefähig ist.
Bis dorthin mußt du WideString nehmen.
Und lass dich nicht von der IDE verwirren. Erste neuere (D2005/...) IDE Versionen zeigen Widestrings auch korrekt als Widestrings und nicht nur als Strings an.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
day

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

Re: Unicode probleme

  Alt 19. Aug 2008, 16:20
Es scheint aber trotzdem auch mit Strings zu funktionieren. Wie gesagt sehe ich die chinesischen symbole auf meiner oberfläche es gibt lediglich ein paar symbole welche das IXMLNode (oder wahrscheinlich eher das TXMLDocument) nicht ausgeben können. Wenn ich den parser selber schreiben würde, dann würde es funktionieren!

Allerdings möchte ich das rad nicht neu erfinden....
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Unicode probleme

  Alt 19. Aug 2008, 16:22
Verwendest du VCL.NET oder WinForms?
Dort ist schon String Unicodeenabled.

Und was siehtst du bei den nicht ausgebbaren Zeichen? Hier hat vermutlich der Verwendete Font kein Zeichen vorhanden!
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
day

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

Re: Unicode probleme

  Alt 19. Aug 2008, 16:31
Also ich verwende die Standard TLabels (winforms). Also ich sehe die chinesischen Symbole und zwischen drin hat es manchmal Fragezeichen (?) anstelle des korrekten symbols. Das mit der Schrift kann ich mir nicht so richtig vorstellen, da ich es ja z.b. im logfile oder debugger richtig sehe. somit müsste die schriftart im windows installiert sein. (habe übrigens die sprachzusätze für asisatische sprachen installiert und regional settings umgestellt)
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Unicode probleme

  Alt 19. Aug 2008, 16:38
Zitat von day:
Also ich verwende die Standard TLabels (winforms).
Dann ändere bitte deinen ersten Post. Du verwendest NICHT "Delphi (Win32)".

Zitat von day:
Also ich sehe die chinesischen Symbole und zwischen drin hat es manchmal Fragezeichen (?).
Fragezeichen sind ein Zeichen für Codepagewandlung. Sollte bei .NET nicht auftreten.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
day

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

Re: Unicode probleme

  Alt 19. Aug 2008, 16:46
Ok jetzt habe ich dich falsch verstanden. Ich verwende Delphi (win32) und benutze die Standard TLabels komponente
  Mit Zitat antworten Zitat
day

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

Re: Unicode probleme

  Alt 19. Aug 2008, 16:47
das wegen dem codepage dachte ich auch schon. kann es am encoding vom XML file liegen?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 6  1 23     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 22:57 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