5
Mam problem z parsowaniem mojego XML, próbowałem wielu rzeczy.Jak mogę analizować XML na Androida?
Mam xml w ten sposób.
<question id="1" text="Zodiac Sign" >
<option id="1" >Aries</option>
<option id="2" >Taurus</option>
<option id="3" >Gemini</option>
<option id="4" >Cancer</option>
<option id="5" >Leo</option>
<option id="6" >Virgo</option>
<option id="7" >Libra</option>
<option id="8" >Scarpio</option>
<option id="9" >Sagitarius</option>
<option id="10" >Capricorn</option>
<option id="11" >Acqauarius</option>
</question><question id="2" text="Home Town" >
</question><question id="3" text="Current Locaion" >
</question><question id="4" text="Nationality" ></question>
<question id="5" text="Height" ></question>
<question id="6" text="Build(optional)" >
<option id="13" >Slim</option>
<option id="14" >Athletic</option>
<option id="15" >Few Pounds Extra</option>
<option id="16" >Obese</option>
</question><question id="7" text="Hair Color" >
</question><question id="8" text="Color Of Eyes" >
<option id="23" >Black</option>
<option id="24" >Brown</option>
<option id="25" >Blue</option>
</question><question id="9" text="Smoking Habits" >
</question>
Muszę dostać pytania i chcę zapisać je w tablicy, a następnie istnieją pewne kwestie, które mają opcje jak tagu dziecka, chcę dodać te opcje w innej tablicy z odniesieniem do tego id zapytania .
Jak mogę faktycznie parsować ten xml.?
I starali się to zrobić przy użyciu XMLPullParser
Oto mój kod, ale jej nie działa.
StringBuilder sb = new StringBuilder();
int depth = 1;
while (depth != 0) {
switch (parser.next()) {
case XmlPullParser.END_TAG:
depth--;
if (depth > 0) {
sb.append("</" + parser.getName() + ">");
}
break;
case XmlPullParser.START_TAG:
depth++;
StringBuilder attrs = new StringBuilder();
for (int i = 0; i < parser.getAttributeCount(); i++) {
attrs.append(parser.getAttributeName(i) + "=\""
+ parser.getAttributeValue(i) + "\" ");
}
sb.append("<" + parser.getName() + " " + attrs.toString() + ">");
break;
default:
sb.append(parser.getText());
break;
}
}
payload = sb.toString();
możesz mi pomóc z tym http://stackoverflow.com/questions/39391267/how-can-i-identify-same-xml-tag-second- czas/39843957 # 39843957 –