ich habe bisher mit AssignFile und ReadLn Textdateien gelesen. Damit kann man leider keine
Unicode-Dateien lesen.
Warum eigentlich nicht? Zugegebenermaßen habe ich es in der Regel mit UTF8-Codierten Dateien zu tun und habe daher jetzt nicht alle anderen Kodierungen präsent, aber für UTF8 kann ich sagen, dass ich AssignFile/readln auch problemlos nutze.
Einziger "Trick" ist, dass man eine neu gelesene Zeile nicht in einen
string
, sondern in einen
RawByteString
einliest, damit Delphi nichts von sich aus umzuwandeln versucht.
Damit könntest du dann auch problemlos testen, ob du beim Einlesen in der ersten Zeile zu Beginn einen BOM stehen hast und diesen auswerten. Mit der passenden Konvertierungsfunktion kannst du dann ja jede Zeile einzeln in einen sauberen
Unicode-String wandeln.
Bis denn
Bommel