XML 파일에서 지정된 이름의 노드를 찾을 함수를 작성하려고합니다. 문제는 함수가 지정된 노드를 찾지 못한다는 것입니다.libxml2를 사용하여 xml 파일에서 노드 찾기
xmlNodePtr findNodeByName(xmlNodePtr rootnode, const xmlChar * nodename)
{
xmlNodePtr node = rootnode;
if(node == NULL){
log_err("Document is empty!");
return NULL;
}
while(node != NULL){
if(!xmlStrcmp(node->name, nodename)){
return node;
}
else if(node->children != NULL){
node = node->children;
xmlNodePtr intNode = findNodeByName(node, nodename);
if(intNode != NULL){
return intNode;
}
}
node = node->next;
}
return NULL;
}
디버거에서 함수가 하위 노드로 들어가지만 여전히 NULL을 반환하는 것을 볼 수 있습니다.
미리 감사드립니다.
XPath API를 사용하지 않는 이유가 있습니까? – apmasell
아니요, 이유는 없습니다 :) libxml2를 사용하기 시작 했으므로 libxml2 만 사용하고 있습니다. – SneakyMummin