其他语言

位置:IT落伍者 >> 其他语言 >> 浏览文章

C语言实现的XML解析器[2]


发布日期:2020年11月13日
 
C语言实现的XML解析器[2]

////////////////////////////////////////////////////

/// 说明 : 解析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

[] []

               

上一篇:VC++ 6.0中实现三叉切分窗口与多视图

下一篇:C语言实现的XML解析器[1]