Ich habe folgendes nervendes Problem.
Für ein Programm lass ich den Inhalt eines StrinGrids via SaveDialog abspeichern oder via OpenDialog laden:
Code:
var f: textfile;
i, k:integer;
begin
if SaveDialog1.Execute
then begin
Assignfile(f, saveDialog1.filename);
rewrite(f);
with StringGrid1 do
begin
writeln(f, StringGrid1.colcount);
writeln(f, StringGrid1.rowcount);
for i:=0 to stringGrid1.colcount-1 do
for k:=0 to StringGrid1.rowcount-1 do
writeln(f, StringGrid1.Cells[i, k]);
end;
closefile(f);
geaendert:=false;
end;
end;
Code:
var f: textfile;
i, k, n:integer;
Wort:string;
begin
if OpenDialog1.Execute
then begin
AssignFile(f, OpenDialog1.filename);
Reset(f);
with StringGrid1 do
begin
Readln(f, n);
StringGrid1.colcount:=n;
Readln(f, n);
StringGrid1.Rowcount:=n;
for i:=0 to stringGrid1.colcount-1 do
for k:=0 to StringGrid1.rowcount-1 do
begin
readln(f, Wort);
StringGrid1.Cells[i, k]:=Wort;
end;
end;
Closefile(f);
end;
end;
Soweit funktioniert auch alles einwandfrei, jetzt aber das Problem, an einer späteren stelle möchte ich das Programm den Inhalt des Grids mit IdFTP hochladen lassen (
Indy). Dazu fülle ich eine TMemo mit den Daten die ich brauche (sind hier in einer speziellen Reihenfolge, daher die TMemo) und möchte sie dann mit
Code:
form1.Memo1.Lines.SaveToFile('test.txt');
in das Verzeichniss der .exe abspeichern lassen. Stattdessen wird die Datei jedoch in das zuletzt mit Save/OpenDialog aufgerufene Verzeichnis gespeichert -.-
Hat jemand eine Idee wie ich das umgehen könnte? Bin noch relativ neu
Danke