读取和更新xml文件 (asp.net C#)

来源:互联网 发布:关于水文地质软件 编辑:程序博客网 时间:2024/05/16 14:52
 

1 示例xml文件 model.xml
<?xml version="1.0" encoding="utf-8" ?>
<DrRoot>
<SiteName>xml操作示例</SiteName>
<SiteUrl>www.abc.com.cn</SiteUrl>
.net开源论坛
<SiteKeyWord>xml操作示例</SiteKeyWord>
<FileType>gif|jpg|rar</FileType>
<FileSize>1024</FileSize>
<Filters>script|iframe</Filters>
<FilterEvent>onload|onmouseover</FilterEvent>
<BadWords>admin|webmaster|drbbs</BadWords>
<DisallowIP>0.0.0.0</DisallowIP>
<IsCloseReg>False</IsCloseReg>
<IsCloseBBS>False</IsCloseBBS>
<PostPay>5</PostPay>
<ReplyPay>2</ReplyPay>
<GoodPay>10</GoodPay>
<DelPost>5</DelPost>
<DelReply>2</DelReply>
<CancleGood>10</CancleGood>
</DrRoot>

2 主要方法

public string ReadValue(string key)
{
   XmlDocument xd=new XmlDocument();
   xd.Load(Server.MapPath("model.xml"));
   XmlNodeList xnl = xd.GetElementsByTagName(key);
   if(xnl.Count==0)
    return "";
   else
   {
    XmlNode mNode=xnl[0];
    return mNode.InnerText;
   }
}

public void UpdateValue(string nKey,string nValue)
{
   if(ReadValue(nKey)!="")
   {
    XmlDocument xmlDoc=new XmlDocument();
    xmlDoc.Load(Server.MapPath("model.xml"));
    XmlNodeList elemList = xmlDoc.GetElementsByTagName(nKey);
    XmlNode mNode=elemList[0];
    mNode.InnerText=nValue;
    XmlTextWriter xw = new XmlTextWriter(new StreamWriter(Server.MapPath("model.xml")));
    xw.Formatting = Formatting.Indented;
    xmlDoc.WriteTo(xw);
    xw.Close();
   }
}

原创粉丝点击