У меня есть этот XML-файл:LibGDX чтения XML-файл
<pack name="Cappellino" num_monete_livello="1100">
<level number="1" status="nolocked" />
<level number="2" status="locked" />
<level number="3" status="locked"/>
</pack>
<pack name="Canottiera">
<level number="4" status="locked"/>
<level number="5" status="locked"/>
<level number="6" status="locked"/>
<level number="7" status="locked"/>
</pack>
<pack name="Tuta">
<level number="8" status="locked"/>
<level number="9" status="locked"/>
<level number="10" status="locked"/>
</pack>
Для чтения этого файла я использую этот код:
XmlReader xml = new XmlReader();
XmlReader.Element xml_element = xml.parse(ProgressFileHandle);
Iterator iterator_level = xml_element.getChildrenByName("level").iterator();
while(iterator_level.hasNext()){
XmlReader.Element level_element = (XmlReader.Element)iterator_level.next();
String level_number = level_element.getAttribute("number");
String level_status = level_element.getAttribute("status");
}
Проблема заключается в том, что код вернуть мне только последний пакет и на самом деле линия XmlReader.Element xml_element = xml.parse(ProgressFileHandle);
вернуть мне только это:
<pack name="Tuta">
<level number="8" status="noeggs"/>
<level number="9" status="locked"/>
<level number="10" status="locked"/>
</pack>
вы знаете, whay ???
Я не уверен, но попробуйте добавить корневой элемент: –
Aleksandrs
ДА !!!! это было !!! благодаря :-) –