加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XML之行

发布时间:2020-12-15 22:32:46 所属栏目:百科 来源:网络整理
导读:最近要用哈XML,就碰到了各种问题。 在MFC中使用XML没有其它中的那样方便,所以的找找需要的工具 具体好像有三种,不过轻量级的一种就是使用一个CMarkUp的类 具体就是可以使用这个类来操作自己需要完成的功能,这是个封装好的XML功能类 1、生成 CString strI

最近要用哈XML,就碰到了各种问题。

在MFC中使用XML没有其它中的那样方便,所以的找找需要的工具

具体好像有三种,不过轻量级的一种就是使用一个CMarkUp的类


具体就是可以使用这个类来操作自己需要完成的功能,这是个封装好的XML功能类

1、生成

CString strID = _T("");
CString strPwd = _T("");
CMarkup xml;
xml.SetDoc("<?xml version="1.0" encoding="UTF-8"?>");
xml.AddElem("UserInfo");
xml.IntoElem();
for (int i=0; i<10; i++)
{
//产生一个随机数,作为权限
srand(UINT(time(NULL)+i));
int nLevel = rand()%256;
strID.Format("UserID%02d",i);
strPwd.Format("UserPwd%02d",i);
xml.AddElem("User");
xml.AddAttrib("UserID",strID);
xml.AddAttrib("UserPwd",strPwd);
xml.AddAttrib("UserLevel",nLevel);
}
xml.OutOfElem();
xml.Save("UserInfo1.xml");

2、查找
CMarkup xml;
BOOL bLoad = false;
BOOL bFind = false;
bLoad = xml.Load("UserInfo1.xml");
if (bLoad)
{
CString strID;
CString strPwd;
xml.ResetMainPos();
xml.FindElem(); //UserInfo
while (xml.FindChildElem("User"))
{
strID = xml.GetChildAttrib("UserID");
strPwd = xml.GetChildAttrib("UserPwd");
TRACE("n----id:%s,pwd:%s-------n",strID,strPwd);
if (strID=="UserID00"&&strPwd=="UserPwd00")
{
bFind = true;
break;
}
}
}
if (bFind)
{
TRACE("n---- find------n");
}
else
{
TRACE("n----no find------n");
}


3、修改
CMarkup xml;
BOOL bLoad = false;
BOOL bFind = false;
bLoad = xml.Load("UserInfo1.xml");
if (bLoad)
{
CString strID;
CString strPwd;
xml.ResetMainPos();
xml.FindElem(); //UserInfo
while (xml.FindChildElem("User"))
{
strID = xml.GetChildAttrib("UserID");
strPwd = xml.GetChildAttrib("UserPwd");
TRACE("n----id:%s,strPwd);
if (strID=="UserID00"&&strPwd=="UserPwd00")
{
bFind = true;
xml.SetChildAttrib("UserID",strID+CString("Modify"));
xml.Save("UserInfo1.xml");
break;
}
}
}
if (bFind)
{
TRACE("n---- find------n");
}
else
{
TRACE("n----no find------n");
}


简单的类的封装其实就是类的抽象加上各种操作的功能,所以还是好好的练好自己的基础。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读