您现在的位置:中国下载站学院中心网络编程c#教程 → 文章列表

VC#中使用XML之基于DOM的案例分析

作者:佚名  来源:不详  发布时间:2007-4-13 19:29:38   

减小字体 增大字体

 
 

  本案例将分析一个联系人应用程序,在这里将XML文档充当数据库来使用,所有的联系人信息存储在XML文档中,同时,在程序中使用DOM对联系人文档进行查询、编辑、更新等操作。具体来说本案例将实现以下功能:

  1. 添加一个新的联系人

  2. 修改现有联系人

  3. 删除现有联系人

  4. 按姓氏查询联系人

  5. 按名字查询联系人

  6. 将所有联系人导出到另一个XML文件

  7. 将联系人从另一个XML文件导入

  以下是程序运行效果图:

  应用程序主窗体:

  添加联系人窗体:

  修改联系人窗体:

  以下是用于测试程序的XML文件:

[责任编辑:cndownzcom]

  contact.xml 将该文件保存在项目目录下

  <?xml version="1.0" encoding="gb2312"?>
<ContactDetails>
<Contact>
 <name>
  <first>Steven</first>
  <last>Perez</last>
 </name>
 <note>CEONTALI@yahoo.com.cn;system at http://www.details.net/token</note>
</Contact>
<Contact>
 <name>
  <first>Billoys</first>
  <last>Perez</last>
 </name>
 <note>Billoys@163.com.cn;system at http://www.Billoys.com/Billoys.htm</note>
</Contact>
<Contact>
 <name>
  <first>刘</first>
  <last>罗锅</last>
 </name>
 <note>古代人</note>
</Contact>
</ContactDetails>

  contact2.xml 该文件用于实现导入联系人功能,将该文件随便保存在一个目录下然后将保存路径连同文件名拷贝到主窗体的“保存的路径”文本框中再单击“导入”按纽即可实现导入功能。

  <?xml version="1.0" encoding="gb2312"?>
<ContactDetails>
<Contact>
 <name>
  <first>Steven</first>
  <last>Perez</last>
 </name>
 <note>CEONTALI@yahoo.com.cn;system at http://www.details.net/token</note>
</Contact>
<Contact>
 <name>
  <first>Billoys</first>
  <last>Perez</last>
 </name>
 <note>Billoys@163.com.cn;system at http://www.Billoys.com/Billoys.htm</note>
</Contact>
<Contact>
 <name>
  <first>刘</first>
  <last>德华</last>
 </name>
 <note>香港著名艺人,工作勤恳同时不忘生活,出演电影100多部,演技已达登峰造极,刻画人物栩栩如生</note>
</Contact>
<Contact>
 <name>
  <first>扬</first>
  <last>震</last>
 </name>
 <note>重案六组探员,为人胆大心细,沉着冷静,富有人情味,经历几次案件后更加成熟,在成长中不断磨练,是个真的汉子,正应验那句话:成就靠真本事</note>
</Contact>
<Contact>
 <name>
  <first>季</first>
  <last>洁</last>
 </name>
 <note>重案六组探员,富有人情味,对扬震早已芳心默许,知道为什么吗?因为她天生就爱保护别人,当她看到扬震被别人用枪指着头吓的回不过神来时就对这个真实的男人产生了感觉,真可谓巾帼不让须眉。
</Contact>
</ContactDetails>

  导出联系人时在“保存的路径”文本框中输入一个文件路径,程序将在该路径下创建一个XML文件,如果该文件存在于该路径上,程序将对该XML文件进行重写。

[责任编辑:cndownzcom]

  为实现以上所述所有功能,我专门编写了一个类来封装实现代码,该类代码如下:

  namespace ContactApplication
{
    using System;
    using System.Xml;
    using System.Text;
    using System.Data;
    using System.Windows.Forms;
    using System.ComponentModel;
    using System.Collections;
    /// <summary>
    /// Contact 联系人
    /// </summary>
    public class Contact : IDisposable
    {
          private string xmlPath;
          private XmlDocument xmlDoc;
          private XmlNode selectNode;
          private string firstName;
          private string lastName;
          private string note;
         
          #region Contact 构造器
          /// <summary>
          /// 默认构造器
          /// </summary>
          public Contact()
          {
                this.xmlPath = "../../Contact.xml";
                this.selectNode = null;
                this.xmlDoc = new XmlDocument();
                this.xmlDoc.Load(this.xmlPath);
                this.firstName = string.Empty;
                this.lastName = string.Empty;
                this.note = string.Empty;
          }
         
          /// <summary>
          /// 使用姓氏,名字,个人信息构造一个联系人对象
          /// </summary>
          /// <param name="firstName">姓氏</param>
          /// <param name="lastName">名字</param>
          /// <param name="note">个人信息</param>
          public Contact(string firstName, string lastName, string note)
          {
                this.xmlPath = "../../Contact.xml";
                this.selectNode = null;
                this.xmlDoc = new XmlDocument();
                this.xmlDoc.Load(this.xmlPath);
                this.firstName = firstName;
                this.lastName = lastName;
                this.note = note;
          }
          #endregion
         
          #region Contact 资源释放方法
          /// <summary>
          /// 清理该对象所有正在使用的资源
          /// </summary>
          public void


在百度中搜索更多VC#中使用XML之基于DOM的案例分析相关网页 转贴于:中国下载站

  • 上一篇文章:用C#和WMI获取逻辑驱动器详细信息
  • 下一篇文章:Visual C#中使用XML之实现DOM
  • 阅读统计:[]
  • 中国下载站】【设为主页】【收藏本页】【打印本文】【回到顶部】【关闭此页

    相关文章
    文章评论(评论内容只代表网友观点,与本站立场无关!)

    用户名: 查看更多评论

    分 值:100分 85分 70分 55分 40分 25分 10分 0分

    内 容:

             (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码


    设为首页 - 关于我们 - 广告服务 - 网站地图 - 加入收藏 - 网站声明 - 网站帮助 - 友情链接

    • Copyright (C) 2006-2008 www.cndownz.com All Rights Reserved.
      中国下载站 版权所有. 粤ICP备05141802号. 对本站有任何建议、意见或投诉,请来信:cndownzcom@yahoo.com.cn.
      喜欢中国下载站(cndownz.com),请把中国下载站(cndownz.com)告诉你QQ上的5位好友,多谢支持!