Hallo,
ich hab hier eine Datei, die diverse Informationen zu Orten enthält. Es sind eben mehrere Zeilen mit den einzelnen Werten (durch Tabulator getrennt), in der ersten Zeile sind die Feldnamen. Diese Datei lese ich mit Hilfe von SdfDataSet und Datasource ein und stelle sie in einem DBGrid dar, wobei die Feldnamen auch als Datensatz angezeigt werden.
Ich kriege soweit alles (halbwegs) hin nur die Suche nach einem Datensatz bereitet mir Kopfzerbrechen, kann mir jemand helfen?
Gruß
Latze
CSV-Datei einlesen / Daten suchen
-
- Beiträge: 60
- Registriert: Sa 4. Jul 2009, 09:11
- OS, Lazarus, FPC: Win7 / Linux (Lazarus 1.4.0)
- CPU-Target: 32Bit/64Bit
CSV-Datei einlesen / Daten suchen
Wer glaubt, etwas zu sein, hat aufgehört, etwas zu werden.
Re: CSV-Datei einlesen / Daten suchen
Bin kein Spezialist dafür, aber hast du diese Seiten schon gelesen?
http://wiki.lazarus.freepascal.org/Laza ... a_data_set" onclick="window.open(this.href);return false;
http://wiki.lazarus.freepascal.org/Laza ... xedDataset" onclick="window.open(this.href);return false;
http://wiki.lazarus.freepascal.org/Laza ... a_data_set" onclick="window.open(this.href);return false;
http://wiki.lazarus.freepascal.org/Laza ... xedDataset" onclick="window.open(this.href);return false;
-
- Beiträge: 60
- Registriert: Sa 4. Jul 2009, 09:11
- OS, Lazarus, FPC: Win7 / Linux (Lazarus 1.4.0)
- CPU-Target: 32Bit/64Bit
Re: CSV-Datei einlesen / Daten suchen
Danke für die Tipps, hat mich leider noch nicht so richtig zum Ziel gebracht.
Gruß
Latze
Gruß
Latze
Wer glaubt, etwas zu sein, hat aufgehört, etwas zu werden.
Re: CSV-Datei einlesen / Daten suchen
Warum denn?Latze hat geschrieben:Danke für die Tipps, hat mich leider noch nicht so richtig zum Ziel gebracht.
Ich habe echt keinen Dunst von der Sache, aber ich hab mal 5 Minuten rumgespielt.
Das funzt bei mir um einen Datensatz zu finden:
Code: Alles auswählen
SdfDataSet1.First;
while not SdfDataSet1.EOF do
begin
if SdfDataSet1.Fields[0].AsString='Bass' then break;
SdfDataSet1.Next;
end;
-
- Beiträge: 489
- Registriert: Sa 5. Apr 2008, 09:37
- OS, Lazarus, FPC: Win Vista,Win 7 (L 0.9.29 FPC 2.4.1)
- CPU-Target: 32Bit /64 Bit
- Wohnort: Nähe Freiburg i.Br.
Re: CSV-Datei einlesen / Daten suchen
vieleicht ist es ja mit Kanonen auf Spatzen geschossen,Latze hat geschrieben:Hallo,
ich hab hier eine Datei, die diverse Informationen zu Orten enthält. Es sind eben mehrere Zeilen mit den einzelnen Werten (durch Tabulator getrennt), in der ersten Zeile sind die Feldnamen. Diese Datei lese ich mit Hilfe von SdfDataSet und Datasource ein und stelle sie in einem DBGrid dar, wobei die Feldnamen auch als Datensatz angezeigt werden.
Ich kriege soweit alles (halbwegs) hin nur die Suche nach einem Datensatz bereitet mir Kopfzerbrechen, kann mir jemand helfen?
Gruß
Latze
aber so was schreit doch nach einer DB
-
- Beiträge: 60
- Registriert: Sa 4. Jul 2009, 09:11
- OS, Lazarus, FPC: Win7 / Linux (Lazarus 1.4.0)
- CPU-Target: 32Bit/64Bit
Re: CSV-Datei einlesen / Daten suchen
Hallo
Danke für den Schubs in die richtige Richtung.
'verwirrte' Grüße, Latze
Mist, funktioniert hier auch einwandfrei. Keine Ahnung, was ich da wieder verwurschtelt hab. War wohl einer der Tage, wo man am besten wieder ins Bett gehen und nichts anfassen sollte um keinen Schaden anzurichten.theo hat geschrieben:Code: Alles auswählen
SdfDataSet1.First; while not SdfDataSet1.EOF do begin if SdfDataSet1.Fields[0].AsString='Bass' then break; SdfDataSet1.Next; end;

Na ja, etwas schneller wäre nicht schlecht aber es funktioniert und darauf kommt es an. 5,2MB werden in 18 Sekunden durchsucht.theo hat geschrieben:Ich habe keine Ahnung, ob es da bessere Wege gibt.
Am liebsten packe ich sowas in meinen SQL-Server aber die Anwendung soll auch ohne auskommen, damit sie auf 'kleinen' PC's oder auch direkt von einem USB-Stick laufen kann. Das ganze dann auch ohne Internetanbindung.khh hat geschrieben: vieleicht ist es ja mit Kanonen auf Spatzen geschossen,
aber so was schreit doch nach einer DB
'verwirrte' Grüße, Latze
Wer glaubt, etwas zu sein, hat aufgehört, etwas zu werden.
- af0815
- Lazarusforum e. V.
- Beiträge: 6766
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: CSV-Datei einlesen / Daten suchen
Wenn die Geschwindigkeit zur Notwendigkeit wird, entweder selbst die Daten nach den Kriterien sortieren (Indexlisten, Bäume,...) und optimieren oder auf lokale DB(-Server) umstellen.Latze hat geschrieben:Am liebsten packe ich sowas in meinen SQL-Server aber die Anwendung soll auch ohne auskommen, damit sie auf 'kleinen' PC's oder auch direkt von einem USB-Stick laufen kann. Das ganze dann auch ohne Internetanbindung.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).