Hallo.
Ich habe die Funktion fertiggestellt:
http://www.delphipraxis.net/internal...t.php?t=116139
Die Auslagerung in
Unicode() habe ich dabei entfernt - war nur hier zur Vereinfachung. Ich gehe mal davon aus, dass der Code in meiner Funktion nun sauber ist, da ich auf einen Speicherbereich zeige, der in der Funktion noch verfügbar ist.
Delphi-Quellcode:
var
s:
string;
buf2:
array[0..1]
of char;
...
fs.seek(unicode_source_position+i*record_length, soFromBeginning);
s := '
';
repeat
fs.ReadBuffer(buf2[0], 1);
fs.ReadBuffer(buf2[1], 1);
if (buf2[0] = #0)
and (buf2[1] = #0)
then
break
else
s := s + buf2[0] + buf2[1];
until false;
result := PWChar(@s[1]);
// Unicode-Umwandlung
...
Ist das jetzt also OK?
Gruß
blackdrake