废话不说,进入正题,为了简便请调整项目属性为使用多字节字符集
tinyxml文件下载地址,(操作xml文件的)
http://sourceforge.net/projects/tinyxml/
一些函数功能
ValueStr //返回元素名称
SetValue //设置元素名称
Parent //返回父节点对象
FirstChild //返回第一个子节点
LastChild //返回最后一个子节点
IterateChildren //返回下一个子节点
InsertEndChild //在最后一个子节点后插入子节点
InsertBeforeChild //在指定的子节点前插入子节点
InsertAfterChild //在指定的子节点后插入子节点
ReplaceChild //替换指定的子节点
RemoveChild //删除指定的子节点
Clear //删除所有的子节点
PreviousSibling //返回同级中前一个节点
NextSibling //返回同级中后一个节点
NextSiblingElement //返回同级中后一个元素
FirstChildElement //返回第一个子元素节点
Attribute //返回元素中的属性值
QueryValueAttribute //返回元素中的属性值
SetAttribute //设置元素中的属性值
FirstAttribute //返回元素中第一个属性对象
LastAttribute //返回元素中最后一个属性对象
RemoveAttribute //删除元素中指定的属性对象
tinyxml的添加
首先,将下载的文件解压复制到原项目目录,
然后,在解决方案中头文件添加现有项,添加进去。
接下来,在stdafx.h中包含两个头文件。
mfc中xml文件的使用
第一步:建立对话框,添加CString变量(与编辑框关联起来).
第二步,(信息录入)添加按钮处理消息(双击按钮即可),利用UpdataeData()更新数据,将数据录入xml文件。
TiXmlDocument *pDoc = new TiXmlDocument();//文件指针
const char *FileName = "res\\Number.xml";//文件名
if(!pDoc->LoadFile(FileName))
{
UpdateData(TRUE);
TiXmlElement *RootElement = NULL;//根节点
TiXmlElement *PersonElement = NULL;//子节点
TiXmlDeclaration *pTd = new TiXmlDeclaration("1.0", "gb2312", "yes" );
pDoc->LinkEndChild(pTd);
RootElement = new TiXmlElement("账号数据");
pDoc->LinkEndChild(RootElement);
}
else{
RootElement = pDoc->RootElement();
}
PersonElement = new TiXmlElement("用户");
RootElement->LinkEndChild(PersonElement);
TiXmlElement *NameElement = new TiXmlElement("账号");
PersonElement->LinkEndChild(NameElement);
TiXmlText *Number = new TiXmlText([要存的数据]);//存的数据可为CString类型
NameElement->LinkEndChild(Number);
TiXmlElement *PassWordElement = new TiXmlElement("密码");
PersonElement->LinkEndChild(PassWordElement);
TiXmlText *PassWord = new TiXmlText([要存的数据]);//存的数据可为CString类型
PassWordElement->LinkEndChild(PassWord);
//你有几项就弄几段上面的代码,本例为两项数据
pDoc->SaveFile(FileName);
- 第三步,(信息显示)先添加list control 控件,选择report(报表)属性,同时添加变量m_ctllist1选择control类型(默认)。
然后在OnInitDialog(void)函数中添加如下代码
📁
教程分享
📅
2020-02-18