Советы начинающим




Как экспортировать таблицу базы данных в ASCII-файл?


procedure TMyTable.ExportToASCII;

var

I: Integer; Dlg: TSaveDialog; ASCIIFile: TextFile; Res: Boolean;

begin

if Active then

if (FieldCount > 0) and (RecordCount > 0) then

begin

Dlg := TSaveDialog.Create(Application); Dlg.FileName := FASCIIFileName; Dlg.Filter := 'ASCII-Fiels (*.asc)|*.asc'; Dlg.Options := Dlg.Options+[ofPathMustExist, ofOverwritePrompt, ofHideReadOnly]; Dlg.Title := 'Экспоритровать данные в ASCII-файл'; try

Res := Dlg.Execute; if Res then

FASCIIFileName := Dlg.FileName; finally

Dlg.Free; end; if Res then

begin

AssignFile(ASCIIFile, FASCIIFileName); Rewrite(ASCIIFile); First; if FASCIIFieldNames then

begin

for I := 0 to FieldCount-1 do

begin

Write(ASCIIFile, Fields[I].FieldName); if I <> FieldCount-1 then

Write(ASCIIFile, FASCIISeparator); end; Write(ASCIIFile, #13#10); end; while not EOF do

begin

for I := 0 to FieldCount-1 do

begin

Write(ASCIIFile, Fields[I].Text); if I <> FieldCount-1 then

Write(ASCIIFile, FASCIISeparator); end; Next; if not EOF then

Write(ASCIIFile, #13#10); end; CloseFile(ASCIIFile); if IOResult <> 0 then

MessageDlg('Ошибка при создании или переписывании '+ 'в ASCII-файл', mtError, [mbOK], 0); end; end

else

MessageDlg('Нет данных для экспортирования.', mtInformation, [mbOK], 0) else

MessageDlg('Таблица должна быть открытой, чтобы данные '+ 'можно было экспортировать в ASCII-формат.', mtError, [mbOK], 0); end;








Содержание  Назад  Вперед