tinyxmld的结束符号

来源:互联网 发布:手机网络增强器 编辑:程序博客网 时间:2024/04/27 23:46

今天由于工作需要 解析xml.我尝试使用的tinyxml.

从其官方网站http://sourceforge.net/projects/tinyxml下载到2.5.3版本的压缩包.

将解压缩出的六个文件tinystr.h,tinyxml.h,tinystr.cpp,tinyxml.cpp,tinyxmlerror.cpp,tinyxmlparser.cpp拷贝到我自己的工程下面.

 然后修改tinyxmlparser.cpp中的如下代码(就是前面的一段宏,注释掉.否则我的VS2003/VC71老是报告错误.)

//#define DEBUG_PARSER
//#if defined( DEBUG_PARSER )
//# if defined( DEBUG ) && defined( _MSC_VER )
//#  include <windows.h>
//#  define TIXML_LOG OutputDebugString
//# else
//#  define TIXML_LOG printf
//# endif
//#endif

另外.我发现.在使用TiXmlDocument时.无论是使用LoadFile直接载入文档还是使用Parse的方法加载xml字符串.

如果文件或字符串的结尾不是CRLF.(空格的情况未验证),而是">"即.xml字符串后面没有其它任何空白符号.则加载肯定会失败.

在此做个标记.以后有空慢慢研究这个问题.

另外.如果定义了宏TIXML_USE_STL.则很多函数的返回值为const string *.这点不知道作者是否是在考虑string类的效率.但是这种方法我感觉十分不爽.因为老是需要在逻辑代码中增加对指针是否为空的判断.太让人郁闷了.

不过,经过两三天的学习.还是感觉tinyxml使用十分方便.感谢作者提供了这么好用的类.