//////////////////////////////////////////////////// /// 说明 : 解析XML文件 返回XML的根节点 /// 参数 : /// : xml xml文件路径 [in] /// : buffer 供解析用的缓冲 [in] /// : buffer_len 缓冲大小(单位:字节) [in] /// : error_reason 执行出错时保存错误原因 [in] /// : root XML的根节点 [out] /// 返回 : 成功 返回 失败返回 /// 说明 : /// : 问 :供解析用的缓冲应该取多大比较合适呢? /// : 答 :供解析用的缓冲主要用来存放XML树 所以 buffer_len >= (XML文件的大小) * 即可 /// :
int mini_parse_xml (char* xml char* buffer int buffer_len char error_reason[ ] MINI_XML_NODE** root)
//////////////////////////////////////////////////// /// 说明 : 查找特定节点的子节点 /// 参数 : /// : father 父结点 [in] /// : name 子孩子节点名 [in] /// : child 子节点 [out]
int mini_find_child (MINI_XML_NODE* father char* name MINI_XML_NODE** child)
//////////////////////////////////////////////////// /// 说明 : 查找特定节点的属性值 /// 参数 : /// : node 节点 [in] /// : name 属性名 [in] /// : value 属性值 [out]
int mini_find_attribute (MINI_XML_NODE* node char* name char** value)
//////////////////////////////////////////////////// /// 说明 : 打印XML树 供调试用 int mini_print_tree (MINI_XML_NODE* root int layer)
#if defined (__cplusplus) || defined (c_plusplus) } #endif #endif
lishixinzhi/Article/program/net/201311/14908把所有的数据当做一个字符串
收到数据后先strstr(buffer,"<?xml version=\"1.0\" encoding=\"UTF-8\"?>")
如果返回的是NULL则表示没有这段 退出
buffer是你收到的数据起始地址
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)