나는이 XML 파일을 구문 분석 tinyxml을 사용하고이선택 XML 요소는
<library>
<book name="ABC">
<chapter val="1"/>
...
</book>
...
<book id="123">
<page val="567"/>
...
</book>
</library>
과 같은 형태의 XML 파일이 있습니다. 나는 C++에서 이것을하고있다. 'chapter'요소를 선택하고 싶습니다. 내 코드는 ...
TiXmlDocument doc;
TiXmlHandle XMLFileHandle(&doc);
TiXmlElement* Book1Element = XMLFileHandle.FirstChild("library").FirstChild("book").FirstChild("chapter").FirstChild.ToElement();
작동합니다. 하지만 '페이지'요소를 선택하려고하면 같은 방식으로 작동하지 않습니다.
TiXmlElement* Book2Element = XMLFileHandle.FirstChild("library").FirstChild("book").FirstChild("page").FirstChild.ToElement();
왜 그런가요? 하나의 책 요소에는 이름으로 속성이 있고 다른 책 요소에는 ID로 된 속성이 있기 때문에 그럴 수 있다고 생각합니다.
xml과 tinyxml을 다루는 것은 처음입니다. 잘못된 용어를 사용하면 사과 드리며, 더 자세히 설명 할 필요가 있으면 알려주세요.
고맙습니다.
입니다. 기본적으로 FirstChild ("chapter")를 FirstChild ("page")로 변경해도 book 요소의 선택을 변경하지 않습니다. 어떻게해야합니까? – livelaughlove
@livelaughlove'book'을 선택하면 그 속성에 따라 올바른'book' 요소를 찾아야합니다. API 문서를 살펴보면 도움이 될 것입니다. – pmr
아, 고마워! – livelaughlove