Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

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

unvollständige MultiByte-Zeichen erkennen [erledigt]

  Alt 29. Apr 2009, 00:10
So, da ich bei meiner XML-Klasse, die Datei nunmal Stückchenweise eingelesen wird, kann ich da auf ein kleines Problemchen stoßen.

Also wie erkenn ich ein Multibyte-Zeichen, bwz. dessen Anfang, wenn ich den Zeichensatz selber nicht kenn?
bzw. wie erkenn ich, ob das letze Zeichen im String zu einem MultiByte-Zeichen gehört, dessen Fortsetzung ich noch nicht mit eingelesen hatte und ich somit noch etwas nachladen müßte.

Dieses hier liefert mir zwar die Zeichenlängen, aber sobald ein MultiByte-Zeichen defekt/abgeschnitten ist, liefert es nur 1
CharLen := CharNextExA(CodePage, Char, 0) - Char Oder muß ich mir da die Zeichensätze zerlegen und eine Prüfung selber bauen,
also über 'ne Mustertabelle mit den existierenden MultiByteZeichen?


PS: für UTF-8 hab ich es schon selber implementiert, da dort CharNextExA immer 1 liefert, was für die interne Positionsbestimmung recht unpraktisch ist.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat