nach dem lesen vom filesystem tauchen am anfang des files immer zwei sonderzeichen auf, nämlich (hex) FF und FE. dieses verhalten tritt immer auf, egal wie ich das file einlese.
hat jemand eine ahnung was da schiefläuft?
Ich hab eine Ahnung.
Das ist eine Unicode-Byteorder-Angabe (wie das genau heißt weiß ich nicht). Es sagt aus, je nachdem in welcher Reihenfolge die beiden Bytes stehen, ob die zwei Bytes der Unicode-Zeichen so herum oder andersrum in der Datei angeordnet sind.
das ergebnis ist immer das gleiche: wenn ich die datei 'sample_cc.xml' im filesystem mit einem hex-editor öffne sieht alles gut aus, das erste zeichen ist 3C, das entspricht dem '<'. nach dem einlesen sind die ersten beiden zeichen FF und FE.
Was kommt eigentlich nach dem 3C (<), ein 00 oder was anderes (z.B. das 3F für ein Fragezeichen (<?xml...))?
Der von dir erwähnte Ultraedit ist in der Lage mit Unicode umgehen zu können. Dein Browser sicherlich auch. Achte mal im Ultraedit auf die Dateityp-Angabe in der Statuszeile (DOS/UNIX/U8-UNIX/...) und schau dir mal im Menu Datei die Optionen unter Konvertieren an. Außerdem gibt es in der Statuszeile eine Dateigrößen-Angabe. Wenn du ein Zeichen hinzufügst und dann speicherst, geht dann der Wert dort um 1 oder um 2 nach oben?