我使用libxml library在C中解析一些xml文件我想比较两个xmlnodes,看看它们是否包含相同的数据有这样的功能吗?

最佳答案

libxml API docs似乎是合理的,并建议xmlBufGetNodeContentxmlBufContent可以做您想要的事情。

xmlNode node1, node2;
......
xmlBuf buf;
xmlChar* content1 = NULL;
xmlChar* content2 = NULL;
if (xmlBufGetNodeContent(&buf, &node1) == 0) {
    content1 = xmlBufContent(&buf);
}
if (xmlBufGetNodeContent(&buf, &node2) == 0) {
    content2 = xmlBufContent(&buf);
}
if (strcmp(content1, content2) == 0) {
    /* nodes match */
}

10-07 18:11