Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.120 Beiträge
 
Delphi 12 Athens
 
#187

Re: himXML (gesprochen himix ML)

  Alt 30. Nov 2009, 09:11
Was ich witzig finde:
in D4 bis D2007 kann man SimpleXML entweder im Ansi-Modus (inklusive UTF-8, aber ohne Dekodierung) laufen lassen,
oder im Unicode-Modus ( einfach diesen Befehl aktivieren > { $DEFINE XML_WIDE_CHARS} ).
Wobei hier dann nur noch Unicode-Dateien lesbar sind und andere XML-Parser durchdrehen da dieser die Datei zwar im Unicode (UTF-16) speichert, aber standardmäßig "windows-1251" als Standardencoding im "Header" speichert.

Und seit D2009 ist SimpleXML nativ nur noch Unicode (wobei viele Stellen nicht korrekt arbeiten)
und wenn man jetzt aber zusätzlich noch { $DEFINE XML_WIDE_CHARS} aktiviert, denn arbeitet es überhaupt nicht mehr, da es das Unicode dann als Ansi ansieht und versucht es nochmals in Unicode umzuwandeln

z.B.:
Delphi-Quellcode:
{$IFDEF XML_WIDE_CHARS}
CurChar := AnsiToUnicode(FBufPtr^);
{$ELSE}
CurChar := FBufPtr^;
{$ENDIF}
FBufPtr ist schon PChar, wird als AnsiChar genommen und nochmals in WideChar umgewandlet.

also bis D2007 noch nutzbar und danach muß man ganz schön aufpassen.


PS: in den JEDIs gibt/gab (?) es auch ein "SimpleXML"
hab hier zwei "ältere" Dateien JvSimpleXml.pas (2002) JclSimpleXml.pas (01. 2009), aber da ich die JEDIs grad nicht installiert hab, kann ich nichts weiteres dazu sagen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat