Speichern von zwei QString bzw. QString / XML inkl Suche...

Alles rund um die Programmierung mit Qt
Antworten
shinji
Beiträge: 23
Registriert: 28. Juli 2010 19:01

Speichern von zwei QString bzw. QString / XML inkl Suche...

Beitrag von shinji »

Hallo!

Ich habe viele XML-Daten, die in etwa so aussehen:

Code: Alles auswählen

<?xml version="1.0" encoding="UTF-8"?>
<Data>
  <Version>1.1</Version>
  <Id>CCBBAABBAABBAABBAABBAABBAABBAABB</Id>
  <Request>
    [...] XML-Elemente [...]
  </Request>
</Data>
Diese muss ich jetzt speichern und später anhand des <Id> Elementes wieder finden können. Jetzt frage ich mich, wie speicher ich die Daten am besten temporär zwischen? Macht man für so etwas ein XmlDocument und padded alle neuen Daten ans Ende und löscht diese dann irgendwie wieder? Oder eine Art zweidimensionales Array, wobei ich in das erste Element dann die Id einzeln speicher und in das zweite Element die XML-Daten? Oder... ja, wie macht man so etwas sinnvoll bei Qt4? Ich muss halt später nach der ID suchen können und das XML zurück geliefert bekommen. Natürlich sollte ein "Löschen nach ID" möglich sein. Gibt es so etwas mit Suchfunktion? Also mit einer Art "findNext(ID)"...
shinji
Beiträge: 23
Registriert: 28. Juli 2010 19:01

Re: Speichern von zwei QString bzw. QString / XML inkl Suche

Beitrag von shinji »

Hallo!

Habe das ganze jetzt mit einer QHash gelöst. Allerdings habe ich jetzt das Problem, dass die QHash die eingetragenen Werte automatisch anhand des Keys sortiert. Denn ich bräuchte noch eine Art "getLastInserted()" Methode die mir das zuletzt eingefügte Element liefert.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Speichern von zwei QString bzw. QString / XML inkl Suche

Beitrag von Christian81 »

Wenn die Reihenfolge wichtig ist dann ist nur QVector oder QList bzw. deren STL-pendants möglich.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
shinji
Beiträge: 23
Registriert: 28. Juli 2010 19:01

Re: Speichern von zwei QString bzw. QString / XML inkl Suche

Beitrag von shinji »

Hallo!

Ja, aber dann kann ich nicht nach einem Key (Inhalt von <id></id>) suchen. Das ist halt auch wichtig.
Hmmmm... ich werde wohl eine QHashIterator Variable als Member der Klasse definieren und dann in diese den letzten geschriebenen Iterator speichern. Mal gucken ob ich das hinbekomme. Bei meinem Versuch eben habe ich nur Speicherzugriffsfehler bekommen :(
ceumern
Beiträge: 28
Registriert: 16. September 2011 11:25

Re: Speichern von zwei QString bzw. QString / XML inkl Suche

Beitrag von ceumern »

reicht nicht eine QMap mit der ID als key und dem rest als value?
shinji
Beiträge: 23
Registriert: 28. Juli 2010 19:01

Re: Speichern von zwei QString bzw. QString / XML inkl Suche

Beitrag von shinji »

Ich habe es jetzt mit einer QHash gelöst. Sollte funktionieren... mal gucken...
Antworten