, 06 2009 . 22:11
+
, , , , (Fields / FieldByName / Post / .). , :
{ , Table1 - ,
ASCII-. TBatchMove, .
}
procedure TForm1.Button1Click(Sender: TObject);
var
oDest: TTable;
oBMove: TBatchMove;
begin
try
oDest := nil;
oBMove := nil;
Table1.Close;
oDest := TTable.Create(nil);
with oDest do
begin
DatabaseName := 'c:\delphi\files';
TableName := 'Test.Txt';
TableType := ttASCII;
end; { , CreateTable}
oBMove := TBatchMove.Create(nil);
with oBMove do
begin
Source := Table1;
Destination := oDest;
Mode := batCopy;
Execute;
end;
finally
if Assigned(oDest) then
oDest.Free;
if Assigned(oBMove) then
oBMove.Free;
end;
end;
{ , , ;
, .
}
procedure TForm1.Button2Click(Sender: TObject);
var
oTxt: TTable;
i: Integer;
f: System.Text;
begin
try
oTxt := nil;
if not FileExists('c:\delphi\files\Test.Txt') then
begin
AssignFile(f, 'c:\delphi\files\Test.Txt');
Rewrite(f);
CloseFile(f);
end;
oTxt := TTable.Create(nil);
with oTxt do
begin
DatabaseName := 'c:\delphi\files';
TableName := 'Test.Txt';
TableType := ttASCII;
Open;
end;
with Table1 do
begin
DisableControls;
if not Active then
Open;
First;
while not EOF do
begin
oTxt.Insert;
{ ;
.sch- }
for i := 0 to FieldCount - 1 do
oTxt.Fields[i].AsString := Fields[i].AsString;
oTxt.Post;
Next;
end;
end;
finally
Table1.EnableControls;
if Assigned(oTxt) then
oTxt.Free;
end;
end;