Ok das ist mir schon klar. Aber genau deswegen ist es ja problematisch zu sagen, dass UTF-8 a) kein BOM benötigt bzw. b) mittendrin gelesen werden kann. Woher weiß ich denn, ob der Stream Little- oder Big-Endian Zeichen enthält? Wie schon gesagt, sobald es eine Mischung aus 1,2 oder 3-Bytezeichen ist kann ich es mir ableiten, weil ich bei Auftreten einer 1-Byte--3-Byte--1-Byte Sequenz genau ableiten kann, welche Endiannes benutzt wird (die 2 Folgebytes der 3-Byte-Sequenz lassen sich dann eindeutig dem Startbyte des 3-Byte-Zeichens zuordnen). Wenn aber nur ausschließlich 2- oder nur ausschließlich 3- oder nur ausschließlich 4-Byte-Zeichen enthalten sind ist es nicht mehr länger eindeutig, weil die Folgebytes jeweils entweder dem vorherigen Start- oder dem darauffolgenden Start-Byte zugeordnet werden können. Sicherlich ist es meistens richtig, zu sagen dass UTF-8 mittendrin gelesen werden kann. Ich meine eben nur, dass die Aussage nicht immer richtig ist, es sei denn ich übersehe irgendetwas, was ich versuchen wollte mit der Diskussion darüber zu klären :-) .... die einzige Möglichkeit die ich jetzt gerade noch sehe ist die, auf das allerletzte Byte im Strom zu vertrauen, dass es auch tatsächlich das letzte Byte im Text ist, dann wiederum bin ich in der Lage die Endiannes zu bestimmen und den Text richtig zu interpretieren. (nicht signierter Beitrag von 11:14, 15. Feb. 2015 (CET) )