Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

Re: unvollständige MultiByte-Zeichen erkennen

  Alt 29. Apr 2009, 13:49
ok, hab es jetzt auch mal über MSDN-Library durchsuchenGetCPInfo versucht ...

Code:
.                       von GetCPInfo:
Encoding     CodePage  MaxCharSize LeadBytes

UTF-7            65000   5            -
UTF-8            65001   4            -
UTF-16               0   unbekannt   -
ISO-10646-UCS-2   1200   unbekannt   -
ISO-8859-1       28591   1            -
ISO-8859-2       28592   1            -
ISO-8859-3       28593   unbekannt   -
ISO-8859-4       28594   1            -
ISO-8859-5       28595   1            -
ISO-8859-6       28596   1            -
ISO-8859-7       28597   1            -
ISO-8859-8       28598   1            -
ISO-8859-9       28599   1            -
ISO-2022-JP     50220   5            -
EUC-JP          51932   unbekannt   -
SHIFT-JIS         932   2            129..159, 224..252
WINDOWS-1250      1250   1            -
WINDOWS-1251      1251   1            -
WINDOWS-1252      1252   1            -
WINDOWS-1253      1253   1            -
WINDOWS-1254      1254   1            -
WINDOWS-1255      1255   1            -
WINDOWS-1256      1256   1            -
WINDOWS-1257      1257   1            -
WINDOWS-1258      1258   1            -
UTF-7 und UTF-8: gut, das MaxCharSize stümmt soweit, aber sonst wird von MSDN-Library durchsuchenCharNextExA immer nur 1 geliefert

UTF-16: na OK, das ignorier ich eh

ISO-10646-UCS-2: hier sollte eigentlich immer 2 rauskommen, aber gut ... erstens behandle ich es eh schon selber und da Windows dazu keine Codepage-Infos bereitstellt ... kein Wunder, daß es dazu nix gibt

ISO-8859-3: hmmm ... aber egal, da ISO-8859-1 bis ISO-8859-9 eh nur Single-Byte-Codepages sein sollten

ISO-2022-JP: gut, die maximale Länge von 5 Byte pro Char wird schonmal angegeben, aber sonst nix und auch CharNextExA meint immer nur 1

EUC-JP: kennt mein Windows nicht

SHIFT-JIS: hier ist mal alles OK und so wie ich's brauch

WINDOWS-1250 bis WINDOWS-1258: hier stimmt es auch ... alles nur Single-Byte-Codepages ^^


Fazit:
eigentlich kann ich alles so lassen, aber ISO-2022-JP (CP: 50220) und EUC-JP (CP: 51932) macht zicken und außer alles selber zu implementieren fällt mir erstmal nix mehr ein
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat