Seite 1 von 1
QStringList vergleichen
Verfasst: 1. Februar 2006 10:32
von eule3
Hallo
Ich müsste wissen ob alle Elemente in einer QStringList in einer
anderen enthalten sind. Ein paar mehr stören nicht, nur wenn
welche fehlen muss ich reagieren. Gibt es da eine Möglichkeit?
Genauer geht es dabei um Felder in einer Datenbank.
Bevor ich mit einer Abfrage auf ein Feld zugreife muss ich erst
feststellen ob es existiert.
Vielen Dank im voraus.
mfg
Verfasst: 1. Februar 2006 10:40
von Sephral
Hiho,
repräsentieren beide Listen Tabellen in der DB?
Dann könnte man das mit SQL herausfinden z.B. mit MINUS oder INTERSECT (da gibts sicher noch viele andere Möglichkeiten).
Stellt nur eine StringList eine Tabelle aus der DB dar und die andere z.B. eine lokale Dateiliste, dann kann man es mal mit QStringList::contains() oder mit einer QHash versuchen.
Ciao,
Sephral
Verfasst: 1. Februar 2006 11:58
von ArneStocker
Hi
da QStringList von QValueList abgeleitet ist, gibt es den operater "==", der prüft allerdings auf exakte Gleichheit
Gruss Arne
Verfasst: 2. Februar 2006 10:30
von eule3
Hallo
Herzlichen Dank für die Antworten.
Die eine Stringliste stellt den ist-Zustand dar.
D.h. sie ist das Ergebnis einer SQL-Abfrage.
Die zweite Stringliste stellt den Soll-Zustand dar,
d.h. sie ist festcodiert im Programmcode.
Ich hoffe mal das das weiterhilft.
Vielen Dank
mfg
Verfasst: 7. Februar 2006 13:15
von eule3
Nochmal Hallo
Also etwas Hilfe würde ich noch benötigen.
Bei mir funktioniert es nun mit mehreren verschachtelten Schleifen aber diese Lösung ist noch aus alten Basic Tagen. Ich denke mal mit QT muss das doch irgendwie "eleganter" zu lösen sein. Wie kann ich z.B. konkret überprüfen ob ein String in einer QStringList enthalten ist. Und wie kann ich auf dieses Element von QStringList zugreifen wenn der Test positiv ausfällt?
Und in der QT-Doku gibt es nur Beispiele wie ein SQL-Cursor in eine QStringList überführt wird, geht das auch mit einer normalen QSqlQuery ?
Den SQL-Cursor verwende ich nur ungern da es da wohl einige Fehler gibt.
Vielen Dank im voraus
mfg
Verfasst: 7. Februar 2006 15:53
von macman
eule3 hat geschrieben:Wie kann ich z.B. konkret überprüfen ob ein String in einer QStringList enthalten ist. Und wie kann ich auf dieses Element von QStringList zugreifen wenn der Test positiv ausfällt?
QStringList::filter(...)