Zitat von
Bernhard Geyer:
Und wer macht sowas in einen AnsiString?
Da wirst du jetzt mit Harten Casts arbeiten müssen bzw. Speicher-Copierroutinen Inhalt deines AnsiStrings -> Speicheradresse von Unicodstring der zuvor mit SetLength auf passende größe gebraucht wurde.
Meinst Du mit harten Casts das hier:
AString := String(AANSIString);
Das ändern auch nichts am Ergebnis.
Wäre es einfacher wenn man statt des AnsiStrings einen RawByteString hätte? Wie könnte man den in
Unicode wandeln? Das Grundproblem ist folgendes: Ich habe eine
ANSI-Datei die zeileweise eingelesen wird. In einer Zeile kann an einer beliebigen Stelle ein
Unicode-String anfangen (bis zum Zeilenende). Das ist durch $FE$FF markiert. Daher dachte ich, dass es am einfachsten ist, diesen Teil einfach per Copy aus dem
Ansi-String zu kopieren und in einen
Unicode string zu wandel. Mit den
ANSI-Inhalten davor werden noch ein paar Prüfungen angestellt, ob man den Unicodestring überhaupt braucht oder nicht.