split/parse und Holen Sie sich den Wert aus einem char-array
Ich möchte eine Funktion schreiben, die in C, durch die ich bekommen kann Wert des Tags aus einem char-array ::
Beispiel ::
char a[]="name=RRR&school=AAA&roll=111&address=SSS";
Ich möchte eine Funktion schreiben, die - wenn ich "name" als parameter der Funktion wird dann die Funktion zurück RRR --- wenn ich "Schule" als parameter der Funktion wird dann die Funktion zurückgeben AAA
habe ich es geschafft in Java ...
public String getTagValue(String toSplit, String tag)
{
String CommandTypeValue="";
String[] FirstSplit;
String[] SecondSplit;
String delims = "&";
FirstSplit = toSplit.split(delims);
for(int i=0; i<FirstSplit.length; i++ )
{
delims = "=";
SecondSplit = FirstSplit[i].split(delims);
if(SecondSplit[0].equals(tag))
return SecondSplit[1];
//System.out.println(SecondSplit[0] +" "+ SecondSplit[1]);
}
return CommandTypeValue;
}
, Wie es zu tun C ?? eine einfache Bibliothek oder Funktion ??
Du musst angemeldet sein, um einen Kommentar abzugeben.
strtok ist das, was Ihr sucht.
Beispiel:
Überprüfen Sie die
strtok
Funktion aus. Sie können es verwenden, teilen Sie IhretoSplit
string auf&
und bei jeder iteration split wieder auf=
zu sehen, wenn der tag passt, was Sie wollen.Verwenden, die strtok () - Familie die standard-Bibliothek:
http://www.cplusplus.com/reference/clibrary/cstring/strtok/
Dann können Sie mit strtok für jeden parameter einzeln mit
"="
als Trennzeichen.