• c# 对Xml的增删改查


    XMl文件

    <?xml version="1.0" standalone="yes"?>
    <dbGuest>
    <User>
        <Name>Guset</Name>
        <City>上海</City>
        <Email>fdfd</Email>
    </User>
    <User>
        <Name>Gu</Name>
        <City>上海</City>
        <Email>fdfd</Email>
    </User>
    </dbGuest>

    访问的类

    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Web;
    using System.Web.SessionState;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.HtmlControls;
    using System.Xml;
    using System.Xml.XPath;
    namespace DsAndXML.OpXMLFile
    {
    /// <summary>
    /// Main 的摘要说明。
    /// </summary>
    public partial class Main : System.Web.UI.Page
    {

       protected void Page_Load(object sender, System.EventArgs e)
       {
        // 在此处放置用户代码以初始化页面
        if(!IsPostBack)
        Bind();

       }

            //绑定数据
       private void Bind()
       {
        DataSet ds = new DataSet();
        ds.ReadXml(Server.MapPath(".\\db\\dbGuest.xml"));
        dgShow.DataSource = ds.Tables[0].DefaultView;
        dgShow.DataBind();
        XmlDocument doc = new XmlDocument();
        doc.Load(Server.MapPath(".\\db\\dbGuest.xml"));
        XmlNodeList elemList = doc.GetElementsByTagName("Name");
        ddlName.Items.Clear();
        for(int i=0;i<elemList.Count;i++)
        ddlName.Items.Add(elemList[i].InnerXml);
       
       }

       #region Web Form Designer generated code
       override protected void OnInit(EventArgs e)
       {
        //
        // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
        //
        InitializeComponent();
        base.OnInit(e);
       }
      
       /// <summary>
       /// 设计器支持所需的方法 - 不要使用代码编辑器修改
       /// 此方法的内容。
       /// </summary>
       private void InitializeComponent()
       {   

       }
       #endregion

            //查询一个数据
       protected void btnQuery_Click(object sender, System.EventArgs e)
       {
        XmlDocument doc = new XmlDocument();
        doc.Load(Server.MapPath(".\\db\\dbGuest.xml"));
          lbEmail.Text = doc.SelectSingleNode("//User[Name='"+ddlName.SelectedItem.Text+"']").ChildNodes.Item(2).InnerText;
            
       }

            //修改一个数据
       protected void btnChange_Click(object sender, System.EventArgs e)
       {
        XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Load(Server.MapPath(".\\db\\dbGuest.xml"));
                xmlDoc.SelectSingleNode("//User[Name='"+ddlName.SelectedItem.Text+"']").ChildNodes.Item(2).InnerText = tbNewMail.Text.ToString().Trim();//获取dbGuest节点的所有子节点
        xmlDoc.Save(Server.MapPath(".\\db\\dbGuest.xml"));
        Bind();
       }

            //删除一个数据
       protected void btnDelete_Click(object sender, System.EventArgs e)
       {
        XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Load(Server.MapPath(".\\db\\dbGuest.xml"));
                xmlDoc.SelectSingleNode("//User[Name='" + ddlName.SelectedItem.Text + "']").RemoveAll();
                xmlDoc.Save(Server.MapPath(".\\db\\dbGuest.xml"));
                Bind();
       }

            //添加一个数据
       protected void btnAdd_Click(object sender, System.EventArgs e)
       {
        XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Load(Server.MapPath(".\\db\\dbGuest.xml"));
        XmlNode root=xmlDoc.SelectSingleNode("dbGuest");//查找<dbGuest>
        XmlElement xe1=xmlDoc.CreateElement("User");//创建一个<User>节点
        XmlElement xesub1=xmlDoc.CreateElement("Name");
        xesub1.InnerText="Guset";//设置文本节点
        xe1.AppendChild(xesub1);//添加到<User>节点中
        XmlElement xesub2=xmlDoc.CreateElement("City");
        xesub2.InnerText="郑州";
        xe1.AppendChild(xesub2);
        XmlElement xesub3=xmlDoc.CreateElement("Email");
        xesub3.InnerText="sufei.1013@163.com";
        xe1.AppendChild(xesub3);

        root.AppendChild(xe1);//添加到<dbGuest>节点中
        xmlDoc.Save(Server.MapPath(".\\db\\dbGuest.xml"));
        Bind();
       }
    }
    }

    这个例子很是经典希望大家能用的上啊

    不明白 的可以发Email给我上面有的

  • 相关阅读:
    itext操作PDF文件添加水印
    【PDF单页转化为图片输出 注意:英文或图片类的PDF可转化,中文抛异常】
    【使用Itext处理PDF文档(新建PDF文件、修改PDF文件、PDF中插入图片、将PDF文件转换为图片)】
    Itext简绍及操作PDF文件
    【将txt文本转图片】
    通用缓存组件
    一个简易的、轻量级的方法并行执行线程辅助类
    学习笔记 android fragment
    某队列积压问题分析、解决
    平衡
  • 原文地址:https://www.cnblogs.com/sufei/p/1486003.html
Copyright © 2020-2023  润新知