Meine Anwendung erzeugt Zeichenketten wie die folgende. Ich muss die Werte zwischen dem Trennzeichen in einzelne Werte zerlegen.
2342|2sd45|dswer|2342||5523|||3654|Pswt
Ich verwende strtok
um dies in einer Schleife zu tun. Für das fünfte Token erhalte ich 5523. Ich muss jedoch den leeren Wert zwischen den beiden Trennzeichen berücksichtigen ||
auch. 5523 sollte der sechste Token sein, so wie ich es verlange.
token = (char *)strtok(strAccInfo, "|");
for (iLoop=1;iLoop<=106;iLoop++) {
token = (char *)strtok(NULL, "|");
}
Irgendwelche Vorschläge?
2 Stimmen
Strtok() ist wohl das Schlimmste, was der C-Standard zu bieten hat. Sie könnten Ihren eigenen Parser schreiben.