Seite 1 von 1

[gelöst] QByteArray durchsuchen

Verfasst: 11. September 2009 13:00
von depp153
Hi @ all


Ich habe ein kleines Testprogramm und lese von einem TCP-Socket mit ReadAll() Daten ein, welche als QByteArry geliefert werden.

Diese Daten speichere ich in einer Queue mittels enqueue und lese später die Daten in ein QByteArray wieder aus mit dequeue.
Ich bekomme vom Host übrigens nur Hex-Werte geliefert.

Nun zu meinem eigentlichen Problem...
ich muss diese Daten nach festen Werten durchsuchen und bekomme das einfach nicht hin...
Irgendwie fehlt mir die letzte Zündende Idee.

Ich suche nach folgendem Wert: 31 00 00 00 11 00 27 00 00 00

Ich hänge mal ein File an, damit ihr seht, was ich vom Socket bekomme, wenn ich das empfangene direkt in ein File schreibe.
-Mit nem Hexeditor öffnen. Dann sieht man irgendwo auch meinen gesuchten Wert.

Vielen Dank schon mal im Voraus...

File hochgeladen

Verfasst: 11. September 2009 13:21
von depp153
Jetzt hab ich glatt vergessen den Knopf "Attachment hinzufügen" zu drücken...

Verfasst: 11. September 2009 13:44
von Curtis Newton
int QByteArray::count ( const QByteArray & ba ) const

und

QByteArray QByteArray::fromRawData ( const char * data, int size )

helfen nicht?

C.

Verfasst: 11. September 2009 13:53
von chrislo1976
...oder:

Code: Alles auswählen

int QByteArray::indexOf ( const QByteArray & ba, int from = 0 ) const
Returns the index position of the first occurrence of the byte array ba in this byte array, searching forward from index position from. Returns -1 if ba could not be found.
Christian

Danke

Verfasst: 14. September 2009 10:24
von depp153
Das ::fromRawData hab ich doch glatt übersehen!!!
:oops:

das war mein "Durchbruch" :idea:

Vielen Dank!!!