资源简介
完全使用C语言编写的XML库源码,采用链表做节点间的遍历查询。

代码片段和文件信息
#include “stdafx.h“
#include “Lkyxml.h“
Lkyxml::Lkyxml()
{
}
Lkyxml::~Lkyxml()
{
}
char* Lkyxml::LdynamicMem(void *buffer)
{
if (0 == buffer)
return 0;
int nlen = strlen((char*)buffer);
if (0 == nlen)
return 0;
char *buff = (char*)malloc(nlen + 1);
memset(buff0nlen + 1);
memcpy(buff(char*)buffernlen);
return buff;
}
bool Lkyxml::LCreateHeadInfo(char *vesionchar *encoding)
{
if (CreateHeadInfo(vesionencoding))
return true;
return false;;
}
bool Lkyxml::LAddHeadInfo(char *HeadDataint HeadDataLen)
{
if (AddHeadInfo(HeadDataHeadDataLen))
return true;
return false;
}
PHeadInfo Lkyxml::LCheckHeadInfo()
{
return CheckHeadInfo();
}
bool Lkyxml::LCreateNode(char *Nodenameint NodenameLen)
{
if (!FreeAllNode())
return false;
if (!AddNode(NodenameNodenameLen))
return false;
return true;
}
bool Lkyxml::LAddNode(char *Nodenameint NodenameLen)
{
if (!AddNode(NodenameNodenameLen))
return false;
return true;
}
bool Lkyxml::LAddNodeTable(char *Tabletypeint TabletypeLenchar *Tablenameint TableLenchar *TableDataint TableDataLen)
{
if (!AddNodeTable(LdynamicMem(Tabletype)TableDataLenLdynamicMem(Tablename)TableLenLdynamicMem(TableData)TableDataLen));
return false;
return true;
}
bool Lkyxml::LCreateElement(char *Elenameint ElenameLen)
{
PNode _node = LGetCurrentNode();
while (_node->ElementHead)
_node->ElementHead = FreeElement(_node->ElementHead);
_node->Element = _node->ElementHead;
if (!AddElement(ElenameElenameLen))
return false;
return true;
}
bool Lkyxml::LAddElement(char *Elenameint ElenameLen)
{
if (!AddElement(ElenameElenameLen))
return false;
return true;
}
bool Lkyxml::LAddElementTable(char *EleTabletypeint EleTabletypeLenchar *EleTablenameint EleTableLenchar *EleTableDataint EleTableDataLen)
{
if (!AddElementTable(LdynamicMem(EleTabletype)EleTabletypeLenLdynamicMem(EleTablename)EleTableLenLdynamicMem(EleTableData)EleTableDataLen))
return false;
return true;
}
bool Lkyxml::LAddElementData(char *ElaDatanameint ElaDatanameLenchar *EleDataint EleDataLen)
{
if (!AddElementData(LdynamicMem(ElaDataname)ElaDatanameLenLdynamicMem(EleData)EleDataLen))
return false;
return true;
}
bool Lkyxml::LAddElementDataTable(char *DataTabletypeint DataTabletypeLenchar *DataTablenameint DataTableLenchar *DataTableDataint DataTableDataLen)
{
if (!AddElementDataTable(LdynamicMem(DataTabletype)DataTabletypeLenLdynamicMem(DataTablename)DataTableLenLdynamicMem(DataTableData)DataTableDataLen))
return false;
return true;
}
bool Lkyxml::LCreatexml()
{
if (!Createxml())
return false;
return true;
}
bool Lkyxml::LCreatexmlFile(char *Filename)
{
if (!CreatexmlFile(Filename))
return false;
return true;
}
bool Lkyxml::LFreeAllNode()
{
if (!FreeAllNode())
return false;
return true;
}
PNode Lkyxml::LFreeNode(PNode freenode)
{
return FreeNode(freenode);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4215 2017-10-04 22:45 Testxm
文件 2111 2017-10-04 22:32 Testxm
文件 42908 2017-10-05 11:31 Testxm
文件 4854 2017-10-04 22:44 Testxm
目录 0 2017-10-04 21:02 Testxm
----------- --------- ---------- ----- ----
54088 5
- 上一篇:gnss卫星定位 c++ O文件N文件
- 下一篇:动态规划实现最佳加法表达式求最小值
相关资源
-
c++读取xm
l配置文件 -
用c++实现的简单xm
l解析 -
c++实现解析xm
l -
msxm
l的使用 vc6 -
最简单的c++ xm
l类,跨平台使用 -
C++xm
l高级编程指南扫描版 -
c++ xm
l处理 domsax -
可以快速批量生成HTML/xm
l/WORD文档 - 自己写的MFC串口调试软件
-
c++实现的简单xm
l解析器 -
xm
l解析 CMarkup类 c++ - matlab2016b配置VS2017编译器mexopts补丁文
-
MFC、DOM实现的xm
l文件解析、修改和 -
VC 读写xm
l文件运用 -
纯C语言解析xm
l字符串 - 北邮计算机院数据结构课程大作业:
-
xm
l文件解析C语言 -
c语言解析xm
l格式代码。 - Cmarkup类....
-
纯C语言解析xm
l字符串含 -
c++ xm
lRPC -
xm
l解析网络位置 -
银行储蓄系统生成xm
l文件 -
C++解析xm
l源码/socket通讯案例
评论
共有 条评论