Hallo Willie,
wenn Du mit Strings statt AnsiStrings arbeitest, musst Du Deine Speicher- und Leseroutine ändern:
Delphi-Quellcode:
var
aText:String;
aLen :Integer;
begin
if SDialog.Execute then begin
// aText:=Verschluesseln1(Memo1.Lines.Text,true,true); //Zeile A
aText:=Memo1.Lines.Text; //Zeile B
aLen:=Length(aText);
FS:=TFilestream.Create(SDialog.FileName,fmCreate);
FS.Write(aLen, SizeOf(Integer));
FS.Write(Pointer(aText)^, aLen*SizeOf(Char));
FS.Free;
end;
end;
Und nun, die umgekehrte Richtung:
Delphi-Quellcode:
var
aText:String;
aLen :Integer;
begin
FS:=TFilestream.Create(SDialog.FileName, fmOpenRead);
aLen:=FS.Read(aLen, SizeOf(Integer));
SetLength(aText, aLen);
FS.Read(Pointer(aText)^, aLen*SizeOf(Char));
FS.Close();
end;