unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ActnList, ActnMan, ToolWin, ActnCtrls, ActnMenus, StdCtrls,
Grids, DBGrids,
DB, ADODB;
type
TForm1 =
class(TForm)
ActionMainMenuBar1: TActionMainMenuBar;
ActionManager1: TActionManager;
StrassenverzNeu: TAction;
OpenDialog1: TOpenDialog;
Memo2: TMemo;
Edit1: TEdit;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
StringGrid1: TStringGrid;
procedure StrassenverzNeuExecute(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.StrassenverzNeuExecute(Sender: TObject);
var
SL: TStringList;
SG: TStringGrid;
i: Integer;
T: Textfile;
SInString:
String;
begin
if (OpenDialog1.Execute)
then begin
SL := TStringList.Create;
// Objekt erzeugen
try
AssignFile(T,OpenDialog1.FileName);
// öffnet die Datei
Reset(T);
Readln(T, SInString);
// Erste Zeile laden
// kann später gelöscht werden
SInString := StringReplace(SInString,
// Ersetze ' ' mit '~~'
'
', '
~~', [rfReplaceAll, rfIgnoreCase]);
SL.Delimiter := '
;';
// Festlegung des Trennzeichens
SL.DelimitedText := SInString;
// Inhalt der Zeile Schreiben
SL.Text := StringReplace(Sl.text,
// Ersetze '~~' mit ' '
'
~~', '
', [rfReplaceAll, rfIgnoreCase]);
Memo2.Lines.Clear;
// Löscht das Memo2
Memo2.Text := SL.Text;
// Zeigt erste Zeile in Memo2
// bis hier hin
while (
not Eof(T))
do begin // solange nicht EOF erreicht
ReadLn(T,SInString);
// lies die nächste Zeile
SInString := StringReplace(SInString,
// Ersetze ' ' mit '~~'
'
', '
~~', [rfReplaceAll, rfIgnoreCase]);
SL.Delimiter := '
;';
// Festlegung des Trennzeichens
SL.DelimitedText := SInString;
// Inhalt der Zeile Schreiben
SL.Text := StringReplace(Sl.text,
// Ersetze '~~' mit ' '
'
~~', '
', [rfReplaceAll, rfIgnoreCase]);
// kann später gelöscht werden
Memo2.Lines.AddStrings(SL);
// Listet die Felder in Memo2
//******* Tabelle ansprechen *********
// ADOTable1.TableName:='StrVerzeichnis';
// ADOTable1.Active:=true;
// ADOTable1.Append; // ?
// bis hier hin
for i := 0
to SL.Count-1
do // ?
ADOQuery1.Insert;
ADOQuery1.SQL.Text:='
INSERT
// ADOTable1.Fields[I].AsString := SL.Strings[i]; //?
// ADOTable1.Post; // ?
end;
finally
i := SL.Count;
ShowMessage(IntToStr(i));
SL.Free; // Objekt schließen
end;
end;
CloseFile(T); // Datei schließen
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
end;
end.