首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

libxml2中有汉语言时解析XML报错

2013-01-04 
libxml2中有中文时解析XML报错char buf[] ?xml version\1.0\ encoding\UTF-8\? JMSB HEAD

libxml2中有中文时解析XML报错
   char buf[] ="<?xml version="1.0" encoding="UTF-8"?> <JMSB> <HEAD> <CLJG>中过</CLJG> " \
"<JLTS>recordNo</JLTS>"\
"<CCXX></CCXX>"\
"</HEAD>"\
"</JMSB>";
 doc = xmlParseMemory((char*)buf, strlen(buf) + 1);
调用此句后,提示
Input is not proper UTF-8, indicate encoding错误
[解决办法]
文件内容不是UTF-8编码的吗?
虽然你加了encoding="UTF-8",但是,文件内容不是UTF-8编码的还是有问题的。

况且,你用的是char型,char型字符串,也就是用GB2312编码,一个汉字占两个字节。


[解决办法]

引用:
文件内容不是UTF-8编码的吗?
虽然你加了encoding="UTF-8",但是,文件内容不是UTF-8编码的还是有问题的。

况且,你用的是char型,char型字符串,也就是用GB2312编码,一个汉字占两个字节。

把encoding="UTF-8"改成encoding="GB2312"试试。
[解决办法]
源文件改成utf8格式试试

热点排行