【发布时间】:2011-05-19 18:28:07
【问题描述】:
我正在尝试从这样的消息中解析 xml:
char * data = message.c_str ();
如何使用字符串或字符数组数据创建 xmlDoc,这意味着没有 xml 文件?
【问题讨论】:
我正在尝试从这样的消息中解析 xml:
char * data = message.c_str ();
如何使用字符串或字符数组数据创建 xmlDoc,这意味着没有 xml 文件?
【问题讨论】:
我认为你可以通过 TiXmlDocument 中的Parse 方法来实现。所以像:
TiXmlDocument doc;
doc.Parse((const char*)data, 0, TIXML_ENCODING_UTF8);
【讨论】:
你可以使用tinyxml.h中定义的std::istream& operator >> (std::istream& in, TiXmlNode& base);函数:
C++ 风格输入:
基于
std::istream operator>>从流中读取 XML,使其 对网络传输有用。这 棘手的部分是知道 XML 何时 文件是完整的,因为会有 几乎可以肯定是其他数据 溪流。 TinyXML 将假定 XML 数据完成后读取 根元素。换一种方式, 结构错误的文件 具有多个根元素将 阅读不正确。另请注意 operator>> 比 解析,由于两个实现 TinyXML 的 STL 和局限性。
【讨论】: