Hallo!
Diesmal will ich Textdateien lesen und deren Zeichensätze berücksichtigen. Bisher habe ich bereits herausgefunden, wie ich mit UTF-8 und UTF-16 umgehe:
- UTF-8: UTF8Decode konvertiert mir das bequem in einen WideString.
- UTF-16 ist hier schön beschrieben.
Meine Fragen sind jetzt:
- Wird da Low/Big Endian auch berücksichtigt? Diesbezüglich kenne ich mich nämlich nicht aus (Um ehrlich zu sein, weiß ich nicht einmal was das ist)...
- Kann es sein, dass eine Datei in UTF-16 gespeichert ist, dies aber nicht mit einem BOM anzeigt (Natürlich angenommen, dass regelkonform verfahren wird.)? Zum Beispiel bei XML, wo das nur in encoding ="UTF-16" angegeben ist?
- Für mich sind zwar UTF-8 und UTF-16 die wichtigsten Zeichensätze, aber wenn ich dennoch einmal "normale" Zeichensätze mit Unterstützung für Umlaute einlesen will? Wird das funktionieren, oder muss ich das extra berücksichtigen, indem ich AnsiString oder String anstatt von WideString verwende?
Vielen Dank,
Andreas
PS: Ich verwende für alle Dateizugriffsfunktionen TFileStreams und nichts anderes Abartiges.
Andreas N.