TiXmlDocument变量LoadFile()加载XML文档失败的原因有哪些?

TinyXml开源库中TiXmlDocument类提供LoadFile()函数,用于加载XML文件;返回值bool类型,反应加载成功还是失败。在哪些情况下会加载失败?哪些原因导致加载XML文件不成功呢?

enter键 发泄超大号解压回车键usb电脑办公键盘程序员解压神器抖音网红Big Enter午睡枕头解压发送键创意礼物
解压神器 网红同款 一键多用 午睡枕头 | 月销量1095件
优惠价19.8元
原价¥39

淘口令:

¥URw6X9xg1fo¥
 

使用TinyXml加载XML文件的一般过程如下:

TiXmlDocument doc( fileName.c_str() );
bool loadOkay = doc.LoadFile();

当返回值为false时,可以通过调用TiXmlDocument的函数ErrorDesc()、ErrorRow()、ErrorCol()、ErrorID()等获取错误信息:实例代码如下:

std::string errStr = doc.ErrorDesc();
int rowID = doc.ErrorRow();

LoadFile()函数加载XML文件失败原因一:编码错误

在XML文件第一行<?xml version=”1.0″ encoding=”gb2312″?>中声明编码格式,LoadFile()函数根据声明的编码格式加载解析文件;否则,按照xml文件在系统中的存储编码格式加载。

当文档中包含中文时,如果不声明encoding=”gb2312″,有可能加载失败;

即便声明了encoding=”gb2312″,但文件本身保存为UTF-8格式,加载到的数据包含的中文显示为乱码。

© 版权声明
THE END
喜欢就支持一下吧,技术咨询可以联系QQ407933975
点赞0
分享
评论 抢沙发