2012-03-01 12 views
5

Sanırım sorun yanlış kullanım işleviyle veya başka bir şeyle ilgilidir.TinyXml'de öğeler nasıl sayılır?

Kodun bu kısmı çalışıyor ancak sonuç iyi değil.

TiXmlElement* e = hDoc.FirstChildElement().Element(); // think problem is there 
while (e) 
{ 
    e = e->NextSiblingElement(); //or may be there 
    count++; 
} 

sayımı sonucu 1.


Xml dosyası olan:

<doc> 
    <state> ... </state> 
    <state> ... </state> 
    ... 
</doc> 

çalışma örneği bulunamıyor.

+0

Sonuç hakkında ne "iyi değil"? Hangi sonucu alıyorsunuz ve hangi sonucu bekliyorsunuz? –

+0

Daha sonra ya soruyu silin veya çözümü yanıt olarak gönderin. –

+0

Çözdüm: İlk satır 'TiXmlElement * e = hDoc.FirstChildElement() FirstChildElement() Öğe();' sayısını alın – Max

cevap

9

Eğer okursanız documentation Eğer (senin yaklaşımından daha neater görünüyor) aşağıdaki örneği bulabilirsiniz:

for(child = parent->FirstChild(); child; child = child->NextSibling()) 
    count++; 

Ama muhtemelen sadece ben öneririm böylece durumlarını saymaya çalışıyoruz:

for(child = parent->FirstChild("state"); child; child = child->NextSibling("state")) 

muhtemelen de böyle bir şey istiyorum:

TiXmlElement *parent = hDoc.RootElement(); 
İlgili konular