TP verwendet
ASCII, Delphi 7 aber
Ansi. Versuch doch einmal, Deinen String mit
OEMToCharBuff in
Ansi umzuwandeln.
[edit] Ein Test mit Delphi 2007 ohne großartige Fehlerbehandlung (die Datei ist
ASCII-kodiert):
Delphi-Quellcode:
var
s: Ansistring;
f: file of AnsiChar;
c: AnsiChar;
begin
AssignFile(f, 'C:\temp\Gnödelgnüdel.txt');
{$I-}
Reset(f);
{$I+}
if IOResult = 0 then
begin
while not EOF(f) do
begin
read(f, c);
s := s + c;
end;
CloseFile(f);
end;
ShowMessage(s); //Gn”delgndel
OEMToCharBuffA(PAnsiChar(s), PAnsiChar(s), Length(s));
ShowMessage(s); //Gnödelgnüdel
end;
Ich verwende OEMToCharBuff, weil bei OEMToChar eine Sicherheitswarnung im
MSDN steht, also besser nicht benutzen. [/edit]