Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Xerces DomParser,获取子节点的名称_C++_Xerces_Domparser - Fatal编程技术网

C++ Xerces DomParser,获取子节点的名称

C++ Xerces DomParser,获取子节点的名称,c++,xerces,domparser,C++,Xerces,Domparser,我试图获取一个函数,该函数返回父节点的第一个子节点的名称 std::string XmlParser::XmlDomDocument::getChildNodeName(const char* parentTag, int parentIndex){ XMLCh* temp = XMLString::transcode(parentTag); DOMNodeList* list = m_doc->getElementsByTagName(temp); XMLSt

我试图获取一个函数,该函数返回父节点的第一个子节点的名称

std::string  XmlParser::XmlDomDocument::getChildNodeName(const char* parentTag, int parentIndex){

    XMLCh* temp = XMLString::transcode(parentTag);
    DOMNodeList* list = m_doc->getElementsByTagName(temp);
    XMLString::release(&temp);

    DOMNode *parentnode = dynamic_cast<DOMNode*>(list->item(parentIndex));
    DOMNode *childnode= parentnode->getFirstChild();

    char* temp2 = XMLString::transcode(childnode->getNodeName());
    string value = temp2;
    XMLString::release(&temp2);

    return value;
}
std::string XmlParser::XmlDomDocument::getChildNodeName(const char*parentTag,int parentIndex){
XMLCh*temp=XMLString::转码(parentTag);
DOMNodeList*list=m_doc->getElementsByTagName(temp);
XMLString::release(&temp);
DOMNode*parentnode=dynamic_cast(列表->项(parentIndex));
DOMNode*childnode=parentnode->getFirstChild();
char*temp2=XMLString::transcode(childnode->getNodeName());
字符串值=temp2;
XMLString::release(&temp2);
返回值;
}
例如,在以下XML的情况下返回“node b”:

<node a>"AAA"</node a>
<node b>"BBB"</node b>
“AAA”
“BBB”
不知道出了什么问题,我可以启动该函数,但它返回字符串“#text”,而不是节点名

我使用C++的XRESCES DOMPARSER。