MangeXml.h.svn-base
上传用户:szjkjd
上传日期:2022-06-27
资源大小:8968k
文件大小:6k
源码类别:

浏览器

开发平台:

Visual C++

  1. /*! @mangexml.h
  2. *******************************************************************************
  3. <PRE>
  4. 模块名         : 对XM文件的操作
  5. 文件名         : mangexml.h
  6. 相关文件       : mangexml.cpp
  7. 文件实现功能   : 对XM文件的操作,包括文件的创建、增加、删除、修改、查询。
  8. 作者           : 王小静
  9. 版本           : 1.0
  10. --------------------------------------------------------------------------------
  11. 备注           : -
  12. --------------------------------------------------------------------------------
  13. 修改记录 : 
  14. 日  期          版本            修改人          修改内容 
  15. 2010/02/08      1.0             王小静            创建
  16. </PRE>
  17. ********************************************************************************
  18. * 版权所有(c) 2010, 17jago, 保留所有权利
  19. *******************************************************************************/
  20. #pragma once
  21. #include "xml.h"
  22. #include <stdlib.h> #include <stdarg.h> #include <memory.h> #include <errno.h> #include <string.h>
  23. /*! @CMangeXml
  24. ********************************************************************************
  25. <PRE>
  26. 类名称   : CMangeXml
  27. 功能     : 对xml文件的操作,创建、增加、删除、修改,查询
  28. --------------------------------------------------------------------------------
  29. 备注     : -
  30. 典型用法 : -
  31. --------------------------------------------------------------------------------
  32. 作者     : 王小静
  33. </PRE>
  34. *******************************************************************************/
  35. class CMangeXml
  36. {
  37. //共有变量
  38. public:
  39. // 构造函数
  40. CMangeXml(void);
  41. // 析构函数
  42. ~CMangeXml(void);
  43. /*! @CreateXml
  44. ************************************************************************************** <PRE> * 函数名       : CreateXml * 功能         : 创建一个xml文件 * 参数         : [IN] filename    : 创建文件的名字,包括文件的所在路径 *              : [IN] encoding    : 文件的编码格式 *              : [IN] root        : xml文件的根目录 * 返回值       : 成功true, 失败false ***********************************************************************************/
  45. bool CreateXml(const char* filename, const char* encoding, const char* root);
  46. /*! @AddXml
  47. ************************************************************************************* <PRE> * 函数名       : AddXml * 功能         : 在已经存在xml文件中添加数据 * 参数    : [IN] filename    : 文件的名字,包括文件的所在路径     *              : [IN] XPath       : 添加xml文件的路径, *              : [IN] index       : 添加数据数据节点序号,节点起始位置是1 *              : [IN] name   : xml中添加名称 *              : [IN] value       : xml的内容 * 返回值       : 成功返回0, 失败返回-1 ***********************************************************************************/
  48. int AddXml(const char * filename, const char * xpath, const int index , const char* name,  const char * value);
  49. /*! @DeleteXml
  50. ************************************************************************************* <PRE> * 函数名       : DeleteXml * 功能         : 在已经存在xml文件删除满足条件的数据 * 参数         : [IN] filename    : 文件的名字,包括文件的所在路径 *              : [IN] XPath       : 删除xml文件的路径 *              : [IN] index       : 删除数据节点序号,节点起始位置是1 * 返回值       : 成功返回true, 失败返回false ***********************************************************************************/
  51. bool DeleteXml(const char * filename, const char * xpath,const int index);
  52. /*! @ReadXml
  53. ************************************************************************************* * 函数名       : ReadXml * 功能         : 在已经存在xml文件中读取满足条件的数据 * 参数         : [IN] filename    : 文件的名字,包括文件的所在路径 *              : [IN] XPath       : 查询xml文件的路径 *              : [IN] index       : 查询数据节点序号,节点起始位置是0 * 返回值       : 成功返回字符串获得的字符串, 失败返回NULL ***********************************************************************************/
  54. TXML *  ReadXml(const char * filename, const char * xpath, const int index);
  55. /*! @Changexml
  56. ************************************************************************************* * 函数名       : Changexml * 功能         : 在已经存在xml文件修改满足条件的数据 * 参数         : [IN] filename    : 文件的名字,包括文件的所在路径 *              : [IN] XPath       : xml文件的路径 *              : [IN] index       : 读数据节点序号,节点起始位置是1 *              : [IN] name        : 修要修改的属性名 *              : [IN] value       : 需要修改的xml内容 * 返回值       : 成功返回true, 失败返回false ***********************************************************************************/
  57. bool Changexml(const char * filename, const char * xpath, const int index, const char * name, const char * value);
  58. /*! @CloseXml
  59. ************************************************************************************* * 函数名       : CloseXml * 功能         : 关闭已经打开的xml文件 * 参数         : [IN] xml         : 打开的xml文件 * 返回值       :无 ***********************************************************************************/
  60. void CloseXml(TXML * xml);
  61. /*! @SumXmlNodes
  62. ************************************************************************************* * 函数名       : SumXmlNodes * 功能         : 获得符合xpath的节点个数 * 参数         : [IN] filename    : 文件的名字,包括文件的所在路径 *              ; [IN] XPath       : xml文件的路径 * 返回值       : 成功返回获得结点个数, 失败返回-1 ***********************************************************************************/
  63. int SumXmlNodes(const char * filename, const char * xpath);
  64. //readXml的返回值
  65. char *p_con; 
  66. };