Cum se salvează de la dbgrid

Cum să salvezi din DBGrid?

Dragi maeștri, răspundeți la întrebarea mea.
La mine ADOQuery1 de la un DB primește datele, mai departe datele prin DataSource1 sunt transferate în DBGrid1. Este posibil să salvați cumva aceste date într-un fișier text text txt? Ce componentă pentru această utilizare și ce cod?







Nici o componentă. Construcție standard:
în timp ce nu ADOQuery1.Eof do
începe
// codul de salvare a înregistrării curente într-un fișier text, procedură de scriere (pentru fișierele text) + F1
ADOQuery1.Next;
se încheie;

var f: text; i: integer;
începe
# xA0; AssignFile (f, "ff.txt");
# xA0; Rescrieți (f);
# xA0; ADOQuery1.First;
# xA0; în timp ce nu este ADOQuery1.eof do
# xA0; # xA0; începeți
# xA0; # xA0; # xA0; Str: = "";
# xA0; # xA0; # xA0; pentru i: = 0 până la ADOQuery1.FieldCount
# xA0; # xA0; # xA0; # xA0; Str: = Str + "" "+ ADOQuery1.File [i] .AsString;
# xA0; # xA0; # xA0; WriteLn (f, Str);
# xA0; # xA0; # xA0; ADOQuery1.Next;
# xA0; # xA0; sfârșitul;
# xA0; CloseFile (f);
se încheie;

Multe mulțumiri pentru acest sfat. Dar am nevoie de un dialog cu utilizatorul. Am decis să folosesc componenta standard.






Iată codul:

procedura TForm1.Button6Click (expeditor: TObject);
var
fname: string;
începe
fname: = edit6.text;
savedialog1.filename: = fname;
dacă a fost salvată1. Executați apoi
# xA0; începeți
# xA0; fname: = edit6.text;
# xA0; adoquery1.SaveToFile (fname);
# xA0; sfârșitul;
se încheie;

Dar la mine, într-un dosar, au fost deduse unele criakoziabriki. Ce e în neregulă cu mine? Și dintr-un anumit motiv, fișierul a fost salvat dintr-un anumit motiv fără permisiune, cum să-l salvezi cu permisiune?

var f: text; i: integer;
începe
dacă SaveDialog1.Execute atunci
# xA0; Atribuiți fișierul (f, SaveDialog1.FileName);
Rescrie (f);
ADOQuery1.First;
în timp ce nu este ADOQuery1.eof do
# xA0; începe
# xA0; # xA0; # xA0; Str: = "";
# xA0; # xA0; # xA0; pentru i: = 0 până la ADOQuery1.FieldCount nu
# xA0; # xA0; # xA0; # xA0; Str: = Str + "" "+ ADOQuery1.File [i] .AsString;
# xA0; # xA0; # xA0; WriteLn (f, Str);
# xA0; # xA0; # xA0; ADOQuery1.Next;
# xA0; se încheie;
CloseFile (f);
se încheie;

De ce nu-mi place
f: text;

[Error] Unit1.pas (802): Se așteaptă un identificator constant sau de tip

Mi-am dat seama ultima mea întrebare. ))) Nu credeți că sunt prost, învăț.

Dar mai departe pe la compilarea de erori nu găsiți. Dar când încep să salvez fișierul în sine, programul se retrage, deoarece găsește o eroare. Indică aici pe această linie

Și codul de eroare este aici

a ridicat clasa de excepție EListError cu mesajul "List of out of boundings (3)." Procesul a fost oprit. "Folosiți pasul sau Run pentru a continua.

Aici nu mai pot determina ce e în neregulă. Te rog ajută.

pentru i: = 0 până la ADOQuery1.FieldCount-1 nu







Articole similare

Trimiteți-le prietenilor: