Сейчас на сайте:
Пользователей: 0
Отсутствуют.
Роботов: 2
Yandex, Googlebot
Гостей: 84
Всех: 86
ВНИМАНИЕ! Конкурс по программированию!
Проект Programmers.kz и школа hotPen3D2D предлагает Вам курсы по веб-дизайну, веб-программированию и компьютерной графике. Подробности здесь.
Информация к новости
- Просмотров: 393
- Автор: AlexanderMS
Как экспортировать таблицу базы данных в ASCII-файл
Категория: Программирование » Delphi » Статьи и исходники » Базы данных » ASCII и CSV
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, Db, DBTables, Grids, DBGrids;
type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
MyTable: TTable;
DataSource1: TDataSource;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure ExportToASCII;
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.ExportToASCII;
const
FASCIISeparator:string=' | ';
var
I: Integer;
Dlg: TSaveDialog;
ASCIIFile: TextFile;
Res, FASCIIFieldNames: Boolean;
FASCIIFileName:string;
begin
with MyTable do
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;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ExportToASCII;
end;
end.
|
Автор неизвестен
Источник: delphiworld.narod.ru
Вернуться
Комментариев: 0
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.




