Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
34
Добавлен:
18.03.2015
Размер:
2.24 Кб
Скачать
unit UnitToMap;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TMain = class(TForm)
ButtonOpenFile: TButton;
ButtonGenScript: TButton;
OpenDialog: TOpenDialog;
procedure ButtonOpenFileClick(Sender: TObject);
procedure ButtonGenScriptClick(Sender: TObject);
function GenLineScript(str:string):string;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
DefDir, InFile , OutFile:string;
end;

var
Main: TMain;

implementation

{$R *.dfm}

function TMain.GenLineScript(str: string): string;
var
ins,Sl:string;
areaid,facid, typeid, yearid, cnt :string;
i,k:integer;
begin
ins:='INSERT INTO aggrresults (areaid, facid, typeid, yearid, cnt) VALUES';
Sl:='';
k:=0;
str:=str+';';
for i := 1 to length(str) do
begin
if str[i]<>';' then
begin
sl:=sl+str[i]
end
else
begin
inc(k);
case k of
1:areaid:=#39+sl+#39+',';
2:facid:=#39+sl+#39+',';
3:typeid:=#39+sl+#39+',';
4:yearid:=#39+sl+#39+',';
5:cnt:=#39+sl+#39;
end;
sl:='';
end;

end;
result:=ins+'('+ areaid + facid + typeid + yearid + cnt+');';
end;

procedure TMain.ButtonGenScriptClick(Sender: TObject);
var
Fin, Fout: TextFile;
StrIn, StrOut:string;
linCount:integer;
begin
AssignFile (Fin,InFile);
AssignFile(Fout,OutFile);
reset(Fin);
rewrite(Fout);

linCount:=0;
while not eof(Fin) do
begin
Readln(Fin,StrIn);
if (length(StrIn)<3) then continue;

inc(linCount);
Writeln(Fout,GenLineScript(StrIn));
if linCount>15000 then Continue;

end;

CloseFile(Fin);
CloseFile(Fout);
end;

procedure TMain.ButtonOpenFileClick(Sender: TObject);
begin
if OpenDialog.Execute then
begin
InFile:=OpenDialog.FileName;
DefDir:=ExtractFileDir(InFile);
OutFile:=InFile+'~';
ButtonGenScript.Enabled:=true;
end;
end;

procedure TMain.FormCreate(Sender: TObject);
begin
OpenDialog.InitialDir:=ExtractFileDir(Application.ExeName);
end;

end.
Соседние файлы в папке Экспорт в библиотеку
  • #
    18.03.20152.78 Кб35ToMap.dproj.local
  • #
    18.03.2015376 б35ToMap.identcache
  • #
    18.03.20155.28 Кб34ToMap.res
  • #
    18.03.20157.82 Кб35UnitToMap.dcu
  • #
    18.03.2015969 б34UnitToMap.dfm
  • #
    18.03.20152.24 Кб34UnitToMap.pas