@Luca Haas
Ich habe deinen Code nur grob überflogen, und vielleicht wurde das bereits angesprochen (ich habe nicht alle Beiträge gelesen), oder du willst eine andere Lösung, aber warum der Aufwand? Eigentlich ist das Importieren eine
CSV-Datei in der Regel Pillepalle. Die Technik beherrscht TStringList von Haus aus. Wobei ganz sauber wird der Import wenn die Felder in Anführungszeichen gesetzt sind.
Jetzt mal auf die Schnelle:
Delphi-Quellcode:
var
slDatei,
slDatensatz: TStringList;
i, k: Integer;
begin
slDatei := TStringList.Create;
slDatensatz := TStringList.Create;
try
slDatei.LoadFromFile(ExtractFilePath(ParamStr(0)) + 'Adressen.csv');
slDatensatz.Delimiter := ';';
for i := 0 to slDatei.Count - 1 do
begin
slDatensatz.DelimitedText := slDatei[i];
for k := 0 to slDatensatz.Count - 1 do
ShowMessage(slDatensatz[k]);
end;
finally
slDatei.Free;
slDatensatz.Free;
end;
end;
Beispieldatei "Adressen.csv"
Code:
"Anrede";"Vorname";"Nachname";"Fima";"Adresse 1";"PLZ";"Ort"
"Frau";"Liselotte";"Müller";"Maier GmbH";"Schwetzingerstr. 7";"81234";"München"
"Herr";"Peter";"Becker ";"Hochbau AG";"Lustigstraße 2";"12345";"Berlin"
In der For-k Schleife muss man die Felder nur noch richtig zuordnen.