Hello Tim,
Danke, meinst du das?
http://forum.de.selfhtml.org/archiv/2008/9/t176846/#m1164170
ja, das war wohl der zusammenfassende Thread.
Cybaer hatte diese Funktion geschrieben, weil er genauso wie ich, schon früher auf die Fragestellung gestoßen war.
Die "Level" kennzeichnen lediglich, ob in dem untersuchten Text gültige UTF-8-Sequenzen mit 1, 2, 3, oder gar vier Bytes vorkommen. False wird geliefert, sowie eine ungültige Sequenz auftritt.
UTF-8 ist im Prinzip resynchronisierbar, d.h. dass mann das vermeintlich erste Byte einer UTF-8-Sequenz erkennen kann und dann einfach nur feststellen muss, ob die folgenden dazu passen.
Es könnte sich natürlich immer noch um eine lose Bytefolge, also keine lesbaren Texte, handeln.
Eine wirklich sichere Erkennung, ob es sich um UTF-8 handelt, gibt es also nicht, aber man kann zumindest sagen, wenn ein Text kein gültiges UTF-8 ist, bzw. zumindest nicht durchgängig.
Schau Dir mal auf Wikipedia die Erklärungen dazu an.
http://de.wikipedia.org/wiki/UTF-8
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg
