hallo, ich arbeite des Öfteren auch mit
CSV Dateien:
vielleicht hilft dir mein Import ein bisschen weiter:
Delphi-Quellcode:
procedure TfrmMain.importFromCSVfile(sFile: string);
var
tfDatei: TextFile;
sZInhalt: string;
slWerte: TStringList;
iZeile: Integer;
begin
TRY
TRY
AssignFile(tfDatei, sFile);
Reset(tfDatei);
iZeile:= 0;
while not EoF(tfDatei) do
begin
slWerte := TStringList.Create;
Readln(tfDatei,sZInhalt);
slWerte.Delimiter := ';';
slWerte.StrictDelimiter := True;
slWerte.DelimitedText := sZInhalt;
Inc(iZeile); // erste Zeile ist der Kopf
if IZeile > 1 then // alles größer als Zeile eins sind Daten
begin
if slWerte.Strings[2] = '' then
slWerte.Strings[2] := IntToStr(0);
tTabelle.Open;
tTabelle.Append;
tTabelle['Spaltenname1'] := StrToInt(slWerte.Strings[0]);
tTabelle['Spaltenname2'] := slWerte.Strings[2];
tTabelle.Post;
end;
end;
EXCEPT
MessageDlg('Est ist ein Fehler aufgetreten, der Prozess wird beendet.',mtError, [mbOK], 0);
END;
FINALLY
CloseFile(tfDatei);
tTabelle.Close;
END;
end;