Jens Holzkämper: String auf codierung prüfen

Beitrag lesen

Tach,

Die Unterscheidung der Fälle:
   7 bit (ascii)
   8 bit (iso)
   mehr als 8 bit (utf8)
   gemischt (utf8 passt, iso passt auch)

würde ich nicht als Raten bezeichnen.

Jeder gültige UTF-8-Text ist immer ein gültiger ISO-8859-*-Text, sobald du also ausgibst, dass ein Text UTF-8 ist, mußt du schon geraten haben, es ist nicht automatisch erkennbar. Der Umkehrschluß ist nicht zulässig, da z.B. auf ein Startbyte die passende Anzahl Folgebytes folgen müssen und z.B. die 13 höchsten Bytewerte nicht vorkommen können, kann man daran erkennen, dass ein Text nicht UTF-8 sein kann.

mfg
Woodfighter