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编码,一个汉字占两个字节。
[解决办法]