7-25读写XML 遍历 XPath

  using System.Xml;

 

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;

namespace  MyXmlDemo
{
    
/// <summary>
    
/// WebForm1 的摘要说明。
    
/// </summary>

    public class WebForm1 : System.Web.UI.Page
    
{
        
protected System.Web.UI.WebControls.Label lbl;
        
protected System.Web.UI.WebControls.Label lblOuter;
        
protected System.Web.UI.WebControls.Button btnModify;
        
protected System.Web.UI.WebControls.Button btnLoad;
    
        
private void Page_Load(object sender, System.EventArgs e)
        
{
            
// 在此处放置用户代码以初始化页面
        }


        
Web 窗体设计器生成的代码

        
private void btnLoad_Click(object sender, System.EventArgs e)
        
{
            XmlDocument xmlDoc
=new XmlDocument();
            xmlDoc.Load(Server.MapPath(
"test.xml"));
            
//lbl.Text=Server.HtmlEncode(xmlDoc.InnerXml);

            XmlNode nodeX
=xmlDoc.DocumentElement;
            lbl.Text
=Server.HtmlEncode(nodeX.InnerXml);
            lblOuter.Text
=Server.HtmlEncode(nodeX.OuterXml);

            
foreach(XmlNode n in nodeX.ChildNodes[0].ChildNodes)
            
{
                Response.Write(n.InnerText 
+ "<br>");
            }

        }


        
private void btnModify_Click(object sender, System.EventArgs e)
        
{
            XmlDocument xmlDoc
=new XmlDocument();
            xmlDoc.Load(Server.MapPath(
"test.xml"));

            XmlElement ele
=xmlDoc.CreateElement("students");
            XmlAttribute attr
=xmlDoc.CreateAttribute("id");
            attr.Value
="1003";
            ele.Attributes.Append(attr);

            XmlElement eleName
=xmlDoc.CreateElement("name");
            eleName.InnerText
="tom";
            ele.AppendChild(eleName);

            
            XmlElement eleAge
=xmlDoc.CreateElement("age");
            eleAge.InnerText
="30";
            ele.AppendChild(eleAge);

            
            XmlElement eleGender
=xmlDoc.CreateElement("gender");
            eleGender.InnerText
="";
            ele.AppendChild(eleGender);

            xmlDoc.DocumentElement.AppendChild(ele);
            xmlDoc.Save(Server.MapPath(
"test.xml"));
        }

    }

}

 

 

2 XPath

 

         private   void  btnOK_Click( object  sender, System.EventArgs e)
        
{
            
if(ddlCustomErrors.SelectedIndex==0return;

            
bool isExist=false;

            XmlDocument xmlDoc
=new XmlDocument();
            xmlDoc.Load(Server.MapPath(
"Web.config"));

//            foreach(XmlNode n in xmlDoc.DocumentElement)
//            {
//                if(n.Name=="system.web")
//                {
//                    foreach(XmlNode nodX in n.ChildNodes)
//                    {
//                        if(nodX.Name=="customErrors")
//                        {
//                            nodX.Attributes[0].InnerText=ddlCustomErrors.SelectedItem.Value;
//                            isExist=true;
//                            break;
//                        }
//                    }
//                    if(!isExist)
//                    {
//                        XmlElement ele=xmlDoc.CreateElement("customErrors");
//                        XmlAttribute attr=xmlDoc.CreateAttribute("mode");
//                        attr.Value=ddlCustomErrors.SelectedItem.Value;
//                        ele.Attributes.Append(attr);
//                        n.AppendChild(ele);                    
//                    }
//                    break;    
//                }
//            }
            XmlNode nodeCustomerErrors=xmlDoc.SelectSingleNode("//customErrors");
            
if(nodeCustomerErrors!=null)
            
{
                nodeCustomerErrors.Attributes[
0].InnerText=ddlCustomErrors.SelectedItem.Value;
            }

            
else
            
{
                nodeCustomerErrors
=xmlDoc.CreateElement("customErrors");
                XmlAttribute attr
=xmlDoc.CreateAttribute("mode");
                attr.Value
=ddlCustomErrors.SelectedItem.Value;
                nodeCustomerErrors.Attributes.Append(attr);
                xmlDoc.SelectSingleNode(
"//system.web").AppendChild(nodeCustomerErrors);    
            }

            xmlDoc.Save(Server.MapPath(
"web.config"));
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值