xml 有如下信息:
<p align="0">
<span type="fixedtext" name="现病史" level="二级" print="True" fontsize="10.5" showborder="False" fontname="宋体" creator="88">
患者自诉正常。。。。。。。。。。。。收入院
</span>
<eof/>
</p>
现在想根据元素属性值 "现病史" 来定位这个元素,可是用 strcmp 来比较这三个汉字没有用,比较另一个属性值是英文的却可以,比如 "fixedtext"。
我的代码:
while (l_pTarget) {
TiXmlElement *pTmp = l_pTarget->FirstChildElement();
for (; pTmp != NULL; pTmp = pTmp->NextSiblingElement()) {
int flag = 0;
TiXmlAttribute *pAttr = pTmp->FirstAttribute();
for (; pAttr != NULL; pAttr = pAttr->Next()) {
if (strcmp(pAttr->Value(), "现病史") == 0) {
flag = 1;
break;
}
}
if (flag && pTmp->GetText() != NULL)
file.Write(pTmp->GetText(), strlen(pTmp->GetText()));
}
l_pTarget = l_pTarget->NextSiblingElement("p");
}
我尝试打开 xml 时设置 utf-8,也没用。先谢谢大家了!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.