国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#實現的XML操作類實例

2020-01-24 01:33:30
字體:
來源:轉載
供稿:網友

本文實例講述了C#實現的XML操作類。分享給大家供大家參考。具體如下:

這里講述了C#寫的一個XML操作類,包括讀取/插入/修改/刪除。

using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Xml;namespace PuTianCheng{ /// <summary> /// XmlHelper 的摘要說明 /// </summary> public class XmlHelper {  public XmlHelper()  {  }  /// <summary>  /// 讀取數據  /// </summary>  /// <param name="path">路徑</param>  /// <param name="node">節點</param>  /// <param name="attribute">屬性名,非空時返回該屬性值,否則返回串聯值</param>  /// <returns>string</returns>  public static string Read(string path, string node, string attribute)  {   string value = "";   try   {    XmlDocument doc = new XmlDocument();    doc.Load(path);    XmlNode xn = doc.SelectSingleNode(node);    value = (attribute.Equals("") ? xn.InnerText : xn.Attributes[attribute].Value);   }   catch { }   return value;  }  /// <summary>  /// 插入數據  /// </summary>  /// <param name="path">路徑</param>  /// <param name="node">節點</param>  /// <param name="element">元素名,非空時插入新元素,否則在該元素中插入屬性</param>  /// <param name="attribute">屬性名,非空時插入該元素屬性值,否則插入元素值</param>  /// <param name="value">值</param>  /// <returns></returns>  public static void Insert(string path, string node, string element, string attribute, string value)  {   try   {    XmlDocument doc = new XmlDocument();    doc.Load(path);    XmlNode xn = doc.SelectSingleNode(node);    if (element.Equals(""))    {     if (!attribute.Equals(""))     {      XmlElement xe = (XmlElement)xn;      xe.SetAttribute(attribute, value);     }    }    else    {     XmlElement xe = doc.createElement_x(element);     if (attribute.Equals(""))      xe.InnerText = value;     else      xe.SetAttribute(attribute, value);     xn.AppendChild(xe);    }    doc.Save(path);   }   catch { }  }  /// <summary>  /// 修改數據  /// </summary>  /// <param name="path">路徑</param>  /// <param name="node">節點</param>  /// <param name="attribute">屬性名,非空時修改該節點屬性值,否則修改節點值</param>  /// <param name="value">值</param>  /// <returns></returns>  public static void Update(string path, string node, string attribute, string value)  {   try   {    XmlDocument doc = new XmlDocument();    doc.Load(path);    XmlNode xn = doc.SelectSingleNode(node);    XmlElement xe = (XmlElement)xn;    if (attribute.Equals(""))     xe.InnerText = value;    else     xe.SetAttribute(attribute, value);    doc.Save(path);   }   catch { }  }  /// <summary>  /// 刪除數據  /// </summary>  /// <param name="path">路徑</param>  /// <param name="node">節點</param>  /// <param name="attribute">屬性名,非空時刪除該節點屬性值,否則刪除節點值</param>  /// <param name="value">值</param>  /// <returns></returns>  public static void Delete(string path, string node, string attribute)  {   try   {    XmlDocument doc = new XmlDocument();    doc.Load(path);    XmlNode xn = doc.SelectSingleNode(node);    XmlElement xe = (XmlElement)xn;    if (attribute.Equals(""))     xn.ParentNode.RemoveChild(xn);    else     xe.RemoveAttribute(attribute);    doc.Save(path);   }   catch { }  } }}

XmlFile.xml:

<?xml version="1.0" encoding="utf-8"?><Root />

使用方法:

string xml = Server.MapPath("XmlFile.xml");//插入元素XmlHelper.Insert(xml, "/Root", "Studio", "", "");//插入元素/屬性XmlHelper.Insert(xml, "/Root/Studio", "Site", "Name", "小路工作室");XmlHelper.Insert(xml, "/Root/Studio", "Site", "Name", "丁香魚工作室");XmlHelper.Insert(xml, "/Root/Studio", "Site", "Name", "譜天城工作室");XmlHelper.Insert(xml, "/Root/Studio/Site[@Name='譜天城工作室']", "Master", "", "紅塵靜思");//插入屬性XmlHelper.Insert(xml, "/Root/Studio/Site[@Name='小路工作室']", "", "Url", "http://www.wzlu.com/");XmlHelper.Insert(xml, "/Root/Studio/Site[@Name='丁香魚工作室']", "", "Url", "http://www.luckfish.net/");XmlHelper.Insert(xml, "/Root/Studio/Site[@Name='譜天城工作室']", "", "Url", "http://www.putiancheng.com/");//修改元素值XmlHelper.Update(xml, "/Root/Studio/Site[@Name='譜天城工作室']/Master", "", "RedDust");//修改屬性值XmlHelper.Update(xml, "/Root/Studio/Site[@Name='譜天城工作室']", "Url", "http://www.putiancheng.net/");XmlHelper.Update(xml, "/Root/Studio/Site[@Name='譜天城工作室']", "Name", "PuTianCheng Studio");//讀取元素值Response.Write("<div>" + XmlHelper.Read(xml, "/Root/Studio/Site/Master", "") + "</div>");//讀取屬性值Response.Write("<div>" + XmlHelper.Read(xml, "/Root/Studio/Site", "Url") + "</div>");//讀取特定屬性值Response.Write("<div>" + XmlHelper.Read(xml, "/Root/Studio/Site[@Name='丁香魚工作室']", "Url") + "</div>");//刪除屬性XmlHelper.Delete(xml, "/Root/Studio/Site[@Name='小路工作室']", "Url");//刪除元素XmlHelper.Delete(xml, "/Root/Studio", "");

希望本文所述對大家的C#程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 漯河市| 无为县| 东城区| 江门市| 栖霞市| 梁平县| 乐清市| 莎车县| 马公市| 望都县| 金华市| 连城县| 靖江市| 吉安县| 星座| 法库县| 康定县| 桂阳县| 张家川| 平湖市| 郓城县| 横山县| 汉源县| 呼图壁县| 寿光市| 瑞金市| 靖宇县| 翁牛特旗| 太仓市| 盐山县| 棋牌| 高州市| 宿迁市| 麟游县| 来安县| 资阳市| 景洪市| 澄城县| 清水县| 华亭县| 丘北县|