wenn ich den am ; splitte, habe ich eine stringlist -- und die hätte ich halt gerne schnell und zeitsparend in so eine struktur gesteckt.
da das aber offenbar nicht geht, muss ich eben doch über die stringlist iterieren und jedes item am = splitten ...
arne.anka hat geschrieben:
wenn ich den am ; splitte, habe ich eine stringlist -- und die hätte ich halt gerne schnell und zeitsparend in so eine struktur gesteckt.
da das aber offenbar nicht geht, muss ich eben doch über die stringlist iterieren und jedes item am = splitten ...
Nunja, einfach eine kleine Wrapper-Funktion die das für dich erledigt und schon kann es Dir auch egal sein.
QMap<QString, QString> pairs;
QStringList cookieText = QString( "key=value;key=value;key=value" ).split( ";" );
for( int i = 0; i < cookieText.size(); i++ )
pairs[cookieText[i].split( "=" )[0]] = cookieText[i].split( "=" )[1];
Finde ich persönlich schöner und kompakter. Unter Umständen ist diese Lösung schneller, da kein Wrapper verwendet wird. Praktisch ist es aber vielleicht egal, weil der Compiler den Wrapper optimiert hätte.
das ist auch meine lösung -- nur dass ich eben von irgendwoher im hinterkopf habe, dass diese splitterei recht aufwendig sei.
keihne ahnung, ob das (noch/für qt) stimmt.
Wenn, dann ist aufwändig in dem Fall relativ. In einer Applikation werden in einer Schleife, die 12 000 mal durchläuft pro Durchlauf 3 Split's verwendet und das läuft in Echtzeit auf einem Sempron 2800+. Das ganze ist in Qt4 geschrieben. Also dürfe nicht so kritisch sein.