日期:2014-05-16  浏览次数:20730 次

如何解析xml文件时里面有汉字字符串
手机端发过来的消息如下:
<message>
<head packtype="30" fromip="192.168.84.28" toip="192.168.84.29" sessionid="1321"/>
<body cmdid="D300" songname = "吻别" startpos="1" requestnum="50"/>
</message>
终端解析的代码如下:
doc = xmlReadMemory(xmlbuf,len,NULL,"UTF8",XML_PARSE_NOBLANKS);
if(doc == NULL) 
{
TRACE("doc == NULL");
return false;
}

root = xmlDocGetRootElement(doc);
if(root == NULL) 
{
TRACE("root == NULL");
xmlFreeDoc(doc);
return false;
}

next = root->xmlChildrenNode;
if(next == NULL) 
{
TRACE("next == NULL");
return false;
}
我打印xmlbuf,得到的内容跟我发的一样,但是解析的时候doc == NULL了,是不是xmlReadMemory的第五个参数有问题?该如何解决,小弟是新手请大虾们帮帮忙~

------解决方案--------------------
探讨

引用:
应该是编码格式不匹配。

能说具体点麽?