当前位置:首页 > 网络编程 > WEB编程 > ASP.net >  .net操纵xml文件类(c#)

 .net操纵xml文件类(c#)

点击次数:21 次 发布日期:2008-11-26 12:35:54 作者:源代码网
源代码网推荐      一直想要写一个操作XML文件的类,今天在网上找了一下,找到一个已写的差不多的类,对其进行扩展与修改,最终成了以下代码,供新手参考参考.
源代码网推荐  //
源代码网推荐  在此类中用到了XML事件.此类中对于节点的查找必需用xpath表达式,如果你对xpath表达式不了解可以查看我收藏的另外一篇文章:+XML文件操作:[学习xpath]XPath最通俗的教程+
源代码网推荐  
源代码网推荐   1using System;
源代码网推荐   2using System.Xml;
源代码网推荐   3using System.Web;
源代码网推荐   4namespace solucky
源代码网推荐   5{
源代码网推荐   6 /**//// <summary>
源代码网推荐   7 /// 必需用XPATH表达式来获取相应节点
源代码网推荐   8 /// 关于xpath可以参见:
源代码网推荐   9 /// </summary>
源代码网推荐   10 public class MyXml
源代码网推荐   11 {
源代码网推荐   12 变量#region 变量
源代码网推荐   13 /**//// <summary>
源代码网推荐   14 /// xml文件所在路径类型
源代码网推荐   15 /// </summary>
源代码网推荐   16 /// <remarks>xml文件所在路径类型</remarks>
源代码网推荐   17 public enum enumXmlPathType
源代码网推荐   18 {
源代码网推荐   19 /**//// <summary>
源代码网推荐   20 /// 绝对路径
源代码网推荐   21 /// </summary>
源代码网推荐   22 AbsolutePath,
源代码网推荐   23 /**//// <summary>
源代码网推荐   24 /// 虚拟路径
源代码网推荐   25 /// </summary>
源代码网推荐   26 VirtualPath
源代码网推荐   27 }
源代码网推荐   28
源代码网推荐   29 private string xmlFilePath ;
源代码网推荐   30 private enumXmlPathType xmlFilePathType ;
源代码网推荐   31 private XmlDocument xmlDoc = new XmlDocument() ;
源代码网推荐   32 #endregion
源代码网推荐   33
源代码网推荐   34
源代码网推荐   35 属性#region 属性
源代码网推荐   36 /**//// <summary>
源代码网推荐   37 /// 文件路径
源代码网推荐   38 /// </summary>
源代码网推荐   39 /// <remarks>文件路径</remarks>
源代码网推荐   40 public string XmlFilePath
源代码网推荐   41 {
源代码网推荐   42 get
源代码网推荐   43 {
源代码网推荐   44 return this.xmlFilePath;
源代码网推荐   45 }
源代码网推荐   46 set
源代码网推荐   47 {
源代码网推荐   48 xmlFilePath = value ;
源代码网推荐   49
源代码网推荐   50 }
源代码网推荐   51 }
源代码网推荐   52
源代码网推荐   53 /**//// <summary>
源代码网推荐   54 /// 文件路径类型
源代码网推荐   55 /// </summary>
源代码网推荐   56 public enumXmlPathType XmlFilePathTyp
源代码网推荐   57 {
源代码网推荐   58 set
源代码网推荐   59 {
源代码网推荐   60 xmlFilePathType = value ;
源代码网推荐   61 }
源代码网推荐   62 }
源代码网推荐   63 #endregion
源代码网推荐   64
源代码网推荐   65 构造函数#region 构造函数
源代码网推荐   66 /**//// <summary>
源代码网推荐   67 ///
源代码网推荐   68 /// </summary>
源代码网推荐   69 /// <param name="tempXmlFilePath"></param>
源代码网推荐   70 public MyXml( string tempXmlFilePath )
源代码网推荐   71 {
源代码网推荐   72 //
源代码网推荐   73 // TODO: 在此处添加构造函数逻辑
源代码网推荐   74 //
源代码网推荐   75
源代码网推荐   76 this.xmlFilePathType = enumXmlPathType.VirtualPath ;
源代码网推荐   77 this.xmlFilePath = tempXmlFilePath ;
源代码网推荐   78 GetXmlDocument() ;
源代码网推荐   79 //xmlDoc.Load( xmlFilePath ) ;
源代码网推荐   80 }
源代码网推荐   81
源代码网推荐   82 /**//// <summary>
源代码网推荐   83 /// 构造函数
源代码网推荐   84 /// </summary>
源代码网推荐   85 /// <param name="tempXmlFilePath">文件路径</param>
源代码网推荐   86 /// <param name="tempXmlFilePathType">类型</param>
源代码网推荐   87 public MyXml( string tempXmlFilePath , enumXmlPathType tempXmlFilePathType )
源代码网推荐   88 {
源代码网推荐   89 //
源代码网推荐   90 // TODO: 在此处添加构造函数逻辑
源代码网推荐   91 //
源代码网推荐   92 this.xmlFilePathType = tempXmlFilePathType ;
源代码网推荐   93 this.xmlFilePath = tempXmlFilePath ;
源代码网推荐   94 GetXmlDocument() ;
源代码网推荐   95 }
源代码网推荐   96 #endregion
源代码网推荐   97
源代码网推荐   98
源代码网推荐   99 /**////<summary>
源代码网推荐  100 ///获取XmlDocument实体类
源代码网推荐  101 ///</summary>
源代码网推荐  102 /// <returns>指定的XML描述文件的一个xmldocument实例</returns>
源代码网推荐  103 private XmlDocument GetXmlDocument()
源代码网推荐  104 {
源代码网推荐  105 XmlDocument doc=null;
源代码网推荐  106
源代码网推荐  107 if( this.xmlFilePathType == enumXmlPathType.AbsolutePath )
源代码网推荐  108 {
源代码网推荐  109 doc = GetXmlDocumentFromFile( xmlFilePath ) ;
源代码网推荐  110 }
源代码网推荐  111 else if( this.xmlFilePathType == enumXmlPathType.VirtualPath )
源代码网推荐  112 {
源代码网推荐  113 doc = GetXmlDocumentFromFile(HttpContext.Current.Server.MapPath(xmlFilePath)) ;
源代码网推荐  114 }
源代码网推荐  115 return doc;
源代码网推荐  116 }
源代码网推荐  117
源代码网推荐  118 private XmlDocument GetXmlDocumentFromFile(string tempXmlFilePath)
源代码网推荐  119 {
源代码网推荐  120 string xmlFileFullPath = tempXmlFilePath ;
源代码网推荐  121 xmlDoc.Load(xmlFileFullPath) ;
源代码网推荐  122 //定义事件处理
源代码网推荐  123 xmlDoc.NodeChanged += new XmlNodeChangedEventHandler(this.nodeUpdateEvent);
源代码网推荐  124 xmlDoc.NodeInserted += new XmlNodeChangedEventHandler(this.nodeInsertEvent);
源代码网推荐  125 xmlDoc.NodeRemoved += new XmlNodeChangedEventHandler(this.nodeDeleteEvent);
源代码网推荐  126 return xmlDoc ;
源代码网推荐  127 }
源代码网推荐  128
源代码网推荐  129 读取指定节点的指定属性值#region 读取指定节点的指定属性值
源代码网推荐  130 /**//// <summary>
源代码网推荐  131 /// 功能:
源代码网推荐  132 /// 读取指定节点的指定属性值
源代码网推荐  133 /// </summary>
源代码网推荐  134 /// <param name="strNode">节点名称</param>
源代码网推荐  135 /// <param name="strAttribute">此节点的属性</param>
源代码网推荐  136 /// <returns></returns>
源代码网推荐  137 public string GetXmlNodeAttributeValue(string strNode,string strAttribute)
源代码网推荐  138 {
源代码网推荐  139 string strReturn = "";
源代码网推荐  140 try
源代码网推荐  141 {
源代码网推荐  142 //根据指定路径获取节点
源代码网推荐  143 XmlNode xmlNode = xmlDoc.SelectSingleNode(strNode) ;
源代码网推荐  144 if (!(xmlNode==null))
源代码网推荐  145 {//获取节点的属性,并循环取出需要的属性值
源代码网推荐  146 XmlAttributeCollection xmlAttr = xmlNode.Attributes ;
源代码网推荐  147
源代码网推荐  148 for(int i=0 ;i<xmlAttr.Count; i++)
源代码网推荐  149 {
源代码网推荐  150 if (xmlAttr.Item(i).Name == strAttribute)
源代码网推荐  151 {
源代码网推荐  152 strReturn = xmlAttr.Item(i).Value ;
源代码网推荐  153 break;
源代码网推荐  154 }
源代码网推荐  155 }
源代码网推荐  156 }
源代码网推荐  157 }
源代码网推荐  158 catch(XmlException xmle)
源代码网推荐  159 {
源代码网推荐  160 throw xmle ;
源代码网推荐  161 }
源代码网推荐  162 return strReturn ;
源代码网推荐  163 }
源代码网推荐  164 #endregion
源代码网推荐  165
源代码网推荐  166
源代码网推荐  167 读取指定节点的值#region 读取指定节点的值
源代码网推荐  168 /**//// <summary>
源代码网推荐  169 /// 功能:
源代码网推荐  170 /// 读取指定节点的值
源代码网推荐  171 /// </summary>
源代码网推荐  172 /// <param name="strNode">节点名称</param>
源代码网推荐  173 /// <returns></returns>
源代码网推荐  174 public string GetXmlNodeValue(string strNode)
源代码网推荐  175 {
源代码网推荐  176 string strReturn = String.Empty ;
源代码网推荐  177
源代码网推荐  178 try
源代码网推荐  179 {
源代码网推荐  180 //根据路径获取节点
源代码网推荐  181 XmlNode xmlNode = xmlDoc.SelectSingleNode(strNode) ;
源代码网推荐  182 if (!(xmlNode==null))
源代码网推荐  183 strReturn = xmlNode.InnerText ;
源代码网推荐  184 }
源代码网推荐  185 catch(XmlException xmle)
源代码网推荐  186 {
源代码网推荐  187 throw xmle ;
源代码网推荐  188 }
源代码网推荐  189 return strReturn ;
源代码网推荐  190 }
源代码网推荐  191 #endregion
源代码网推荐  192
源代码网推荐  193 设置节点值#region 设置节点值
源代码网推荐  194 /**//// <summary>
源代码网推荐  195 /// 功能:
源代码网推荐  196 /// 设置节点值
源代码网推荐  197 /// </summary>
源代码网推荐  198 /// <param name="strNode">节点的名称</param>
源代码网推荐  199 /// <param name="newValue">节点值</param>
源代码网推荐  200 public void SetXmlNodeValue(string xmlNodePath,string xmlNodeValue)
源代码网推荐  201 {
源代码网推荐  202 try
源代码网推荐  203 {
源代码网推荐  204 //可以批量为符合条件的节点进行付值
源代码网推荐  205 XmlNodeList xmlNode=this.xmlDoc.SelectNodes(xmlNodePath);
源代码网推荐  206 if (!(xmlNode==null))
源代码网推荐  207 {
源代码网推荐  208 foreach(XmlNode xn in xmlNode)
源代码网推荐  209 {
源代码网推荐  210 xn.InnerText = xmlNodeValue ;
源代码网推荐  211 }
源代码网推荐  212 }
源代码网推荐  213 /**//*
源代码网推荐  214 * 根据指定路径获取节点
源代码网推荐  215 XmlNode xmlNode = xmlDoc.SelectSingleNode(xmlNodePath) ;
源代码网推荐  216 //设置节点值
源代码网推荐  217 if (!(xmlNode==null))
源代码网推荐  218 xmlNode.InnerText = xmlNodeValue ;*/
源代码网推荐  219 }
源代码网推荐  220 catch(XmlException xmle)
源代码网推荐  221 {
源代码网推荐  222 throw xmle ;
源代码网推荐  223 }
源代码网推荐  224 }
源代码网推荐  225 #endregion
源代码网推荐  226
源代码网推荐  227 设置节点的属性值#region 设置节点的属性值
源代码网推荐  228 /**//// <summary>
源代码网推荐  229 /// 功能:
源代码网推荐  230 /// 设置节点的属性值
源代码网推荐  231 /// </summary>
源代码网推荐  232 /// <param name="xmlNodePath">节点名称</param>
源代码网推荐  233 /// <param name="xmlNodeAttribute">属性名称</param>
源代码网推荐  234 /// <param name="xmlNodeAttributeValue">属性值</param>
源代码网推荐  235 public void SetXmlNodeAttributeValue(string xmlNodePath,string xmlNodeAttribute,string xmlNodeAttributeValue)
源代码网推荐  236 {
源代码网推荐  237 try
源代码网推荐  238 {
源代码网推荐  239 //可以批量为符合条件的节点的属性付值
源代码网推荐  240 XmlNodeList xmlNode=this.xmlDoc.SelectNodes(xmlNodePath);
源代码网推荐  241 if (!(xmlNode==null))
源代码网推荐  242 {
源代码网推荐  243 foreach(XmlNode xn in xmlNode)
源代码网推荐  244 {
源代码网推荐  245 XmlAttributeCollection xmlAttr = xn.Attributes ;
源代码网推荐  246 for(int i=0 ; i<xmlAttr.Count ; i++)
源代码网推荐  247 {
源代码网推荐  248 if ( xmlAttr.Item(i).Name == xmlNodeAttribute )
源代码网推荐  249 {
源代码网推荐  250 xmlAttr.Item(i).Value = xmlNodeAttributeValue;
源代码网推荐  251 break ;
源代码网推荐  252 }
源代码网推荐  253 }
源代码网推荐  254 }
源代码网推荐  255 }
源代码网推荐  256 /**//*单个节点
源代码网推荐  257 //根据指定路径获取节点
源代码网推荐  258 XmlNode xmlNode = xmlDoc.SelectSingleNode(xmlNodePath) ;
源代码网推荐  259 if (!(xmlNode==null))
源代码网推荐  260 {//获取节点的属性,并循环取出需要的属性值
源代码网推荐  261 XmlAttributeCollection xmlAttr = xmlNode.Attributes ;
源代码网推荐  262 for(int i=0 ; i<xmlAttr.Count ; i++)
源代码网推荐  263 {
源代码网推荐  264 if ( xmlAttr.Item(i).Name == xmlNodeAttribute )
源代码网推荐  265 {
源代码网推荐  266 xmlAttr.Item(i).Value = xmlNodeAttributeValue;
源代码网推荐  267 break ;
源代码网推荐  268 }
源代码网推荐  269 }
源代码网推荐  270 }
源代码网推荐  271 */
源代码网推荐  272 }
源代码网推荐  273 catch(XmlException xmle)
源代码网推荐  274 {
源代码网推荐  275 throw xmle ;
源代码网推荐  276 }
源代码网推荐  277 }
源代码网推荐  278 #endregion
源代码网推荐  279
源代码网推荐  280 添加#region 添加
源代码网推荐  281 /**//// <summary>
源代码网推荐  282 /// 获取XML文件的根元素
源代码网推荐  283 /// </summary>
源代码网推荐  284 public XmlNode GetXmlRoot()
源代码网推荐  285 {
源代码网推荐  286 return xmlDoc.DocumentElement ;
源代码网推荐  287 }
源代码网推荐  288
源代码网推荐  289 /**//// <summary>
源代码网推荐  290 /// 在根节点下添加父节点
源代码网推荐  291 /// </summary>
源代码网推荐  292 public void AddParentNode(string parentNode)
源代码网推荐  293 {
源代码网推荐  294 try
源代码网推荐  295 {
源代码网推荐  296 XmlNode root = GetXmlRoot() ;
源代码网推荐  297 XmlNode parentXmlNode = xmlDoc.CreateElement(parentNode) ;
源代码网推荐  298 root.AppendChild(parentXmlNode) ;
源代码网推荐  299 }
源代码网推荐  300 catch(XmlException xmle)
源代码网推荐  301 {
源代码网推荐  302 throw xmle ;
源代码网推荐  303 }
源代码网推荐  304 }
源代码网推荐  305
源代码网推荐  306 /**//// <summary>
源代码网推荐  307 /// 向一个已经存在的父节点中插入一个子节点
源代码网推荐  308 /// </summary>
源代码网推荐  309 /// <param name="parentNodePath">父节点</param>
源代码网推荐  310 /// <param name="childNodePath">字节点名称</param>
源代码网推荐  311 public void AddChildNode( string parentNodePath,string childnodename )
源代码网推荐  312 {
源代码网推荐  313 try
源代码网推荐  314 {
源代码网推荐  315 XmlNode parentXmlNode = xmlDoc.SelectSingleNode(parentNodePath) ;
源代码网推荐  316 if(!((parentXmlNode)==null))//如果此节点存在
源代码网推荐  317 {
源代码网推荐  318 XmlNode childXmlNode = xmlDoc.CreateElement(childnodename) ;
源代码网推荐  319 parentXmlNode.AppendChild( childXmlNode ) ;
源代码网推荐  320 }
源代码网推荐  321 else{//如果不存在就放父节点添加
源代码网推荐  322 //this.GetXmlRoot().AppendChild(childXmlNode);
源代码网推荐  323 }
源代码网推荐  324
源代码网推荐  325 }
源代码网推荐  326 catch(XmlException xmle)
源代码网推荐  327 {
源代码网推荐  328 throw xmle;
源代码网推荐  329 }
源代码网推荐  330 }
源代码网推荐  331
源代码网推荐  332 /**//// <summary>
源代码网推荐  333 /// 向一个节点添加属性
源代码网推荐  334 /// </summary>
源代码网推荐  335 /// <param name="NodePath">节点路径</param>
源代码网推荐  336 /// <param name="NodeAttribute">属性名</param>
源代码网推荐  337 public void AddAttribute( string NodePath , string NodeAttribute)
源代码网推荐  338 {
源代码网推荐  339 privateAddAttribute(NodePath,NodeAttribute,"");
源代码网推荐  340 }
源代码网推荐  341 /**//// <summary>
源代码网推荐  342 ///
源代码网推荐  343 /// </summary>
源代码网推荐  344 /// <param name="NodePath"></param>
源代码网推荐  345 /// <param name="NodeAttribute"></param>
源代码网推荐  346 /// <param name="NodeAttributeValue"></param>
源代码网推荐  347 private void privateAddAttribute( string NodePath , string NodeAttribute,string NodeAttributeValue)
源代码网推荐  348 {
源代码网推荐  349 try
源代码网推荐  350 {
源代码网推荐  351 XmlNode nodePath = xmlDoc.SelectSingleNode( NodePath ) ;
源代码网推荐  352 if (!(nodePath==null))
源代码网推荐  353 {
源代码网推荐  354 XmlAttribute nodeAttribute = this.xmlDoc.CreateAttribute(NodeAttribute);
源代码网推荐  355 nodeAttribute.Value=NodeAttributeValue;
源代码网推荐  356 nodePath.Attributes.Append(nodeAttribute) ;
源代码网推荐  357 }
源代码网推荐  358 }
源代码网推荐  359 catch(XmlException xmle)
源代码网推荐  360 {
源代码网推荐  361 throw xmle;
源代码网推荐  362 }
源代码网推荐  363 }
源代码网推荐  364 /**//// <summary>
源代码网推荐  365 /// 向一个节点添加属性,并付值
源代码网推荐  366 /// </summary>
源代码网推荐  367 /// <param name="NodePath">节点</param>
源代码网推荐  368 /// <param name="NodeAttribute">属性名</param>
源代码网推荐  369 /// <param name="NodeAttributeValue">属性值</param>
源代码网推荐  370 public void AddAttribute( string NodePath , string NodeAttribute,string NodeAttributeValue)
源代码网推荐  371 {
源代码网推荐  372 privateAddAttribute(NodePath,NodeAttribute,NodeAttributeValue);
源代码网推荐  373 }
源代码网推荐  374 #endregion
源代码网推荐  375
源代码网推荐  376 删除#region 删除
源代码网推荐  377 /**//// <summary>
源代码网推荐  378 /// 删除节点的一个属性
源代码网推荐  379 /// </summary>
源代码网推荐  380 /// <param name="NodePath">节点所在的xpath表达式</param>
源代码网推荐  381 /// <param name="NodeAttribute">属性名</param>
源代码网推荐  382 public void DeleteAttribute( string NodePath , string NodeAttribute)
源代码网推荐  383 {
源代码网推荐  384 XmlNodeList nodePath =this.xmlDoc.SelectNodes(NodePath);
源代码网推荐  385 if (!(nodePath==null))
源代码网推荐  386 {
源代码网推荐  387 foreach (XmlNode tempxn in nodePath)
源代码网推荐  388 {
源代码网推荐  389 XmlAttributeCollection xmlAttr = tempxn.Attributes ;
源代码网推荐  390 for(int i=0 ; i<xmlAttr.Count ; i++)
源代码网推荐  391 {
源代码网推荐  392 if ( xmlAttr.Item(i).Name == NodeAttribute)
源代码网推荐  393 {
源代码网推荐  394 tempxn.Attributes.RemoveAt(i);
源代码网推荐  395 break ;
源代码网推荐  396 }
源代码网推荐  397 }
源代码网推荐  398 }
源代码网推荐  399 }
源代码网推荐  400 }
源代码网推荐  401
源代码网推荐  402 /**//// <summary>
源代码网推荐  403 /// 删除节点,当其属性值等于给定的值时
源代码网推荐  404 /// </summary>
源代码网推荐  405 /// <param name="NodePath">节点所在的xpath表达式</param>
源代码网推荐  406 /// <param name="NodeAttribute">属性</param>
源代码网推荐  407 /// <param name="NodeAttributeValue">值</param>
源代码网推荐  408 public void DeleteAttribute( string NodePath , string NodeAttribute , string NodeAttributeValue)
源代码网推荐  409 {
源代码网推荐  410 XmlNodeList nodePath =this.xmlDoc.SelectNodes(NodePath);
源代码网推荐  411 if (!(nodePath==null))
源代码网推荐  412 {
源代码网推荐  413 foreach (XmlNode tempxn in nodePath)
源代码网推荐  414 {
源代码网推荐  415 XmlAttributeCollection xmlAttr = tempxn.Attributes ;
源代码网推荐  416 for(int i=0 ; i<xmlAttr.Count ; i++)
源代码网推荐  417 {
源代码网推荐  418 if ( xmlAttr.Item(i).Name == NodeAttribute && xmlAttr.Item(i).Value==NodeAttributeValue)
源代码网推荐  419 {
源代码网推荐  420 tempxn.Attributes.RemoveAt(i);
源代码网推荐  421 break ;
源代码网推荐  422 }
源代码网推荐  423 }
源代码网推荐  424 }
源代码网推荐  425 }
源代码网推荐  426 }
源代码网推荐  427 /**//// <summary>
源代码网推荐  428 /// 删除节点
源代码网推荐  429 /// </summary>
源代码网推荐  430 /// <param name="tempXmlNode"></param>
源代码网推荐  431 /// <remarks></remarks>
源代码网推荐  432 public void DeleteXmlNode(string tempXmlNode){
源代码网推荐  433 XmlNodeList nodePath =this.xmlDoc.SelectNodes(tempXmlNode);
源代码网推荐  434 if (!(nodePath==null))
源代码网推荐  435 {
源代码网推荐  436 foreach(XmlNode xn in nodePath)
源代码网推荐  437 {
源代码网推荐  438 xn.ParentNode.RemoveChild(xn);
源代码网推荐  439 }
源代码网推荐  440 }
源代码网推荐  441 }
源代码网推荐  442
源代码网推荐  443 #endregion
源代码网推荐  444
源代码网推荐  445 XML文档事件#region XML文档事件
源代码网推荐  446 /**//// <summary>
源代码网推荐  447 ///
源代码网推荐  448 /// </summary>
源代码网推荐  449 /// <param name="src"></param>
源代码网推荐  450 /// <param name="args"></param>
源代码网推荐  451 private void nodeInsertEvent(Object src, XmlNodeChangedEventArgs args)
源代码网推荐  452 {
源代码网推荐  453 //保存设置
源代码网推荐  454 SaveXmlDocument();
源代码网推荐  455 }
源代码网推荐  456 /**//// <summary>
源代码网推荐  457 ///
源代码网推荐  458 /// </summary>
源代码网推荐  459 /// <param name="src"></param>
源代码网推荐  460 /// <param name="args"></param>
源代码网推荐  461 private void nodeDeleteEvent(Object src, XmlNodeChangedEventArgs args)
源代码网推荐  462 {
源代码网推荐  463 //保存设置
源代码网推荐  464 SaveXmlDocument();
源代码网推荐  465 }
源代码网推荐  466 /**//// <summary>
源代码网推荐  467 ///
源代码网推荐  468 /// </summary>
源代码网推荐  469 /// <param name="src"></param>
源代码网推荐  470 /// <param name="args"></param>
源代码网推荐  471 private void nodeUpdateEvent(Object src, XmlNodeChangedEventArgs args)
源代码网推荐  472 {
源代码网推荐  473 //保存设置
源代码网推荐  474 SaveXmlDocument();
源代码网推荐  475 }
源代码网推荐  476 #endregion
源代码网推荐  477
源代码网推荐  478 保存XML文件#region 保存XML文件
源代码网推荐  479 /**//// <summary>
源代码网推荐  480 /// 功能:
源代码网推荐  481 /// 保存XML文件
源代码网推荐  482 ///
源代码网推荐  483 /// </summary>
源代码网推荐  484 public void SaveXmlDocument()
源代码网推荐  485 {
源代码网推荐  486 try
源代码网推荐  487 {
源代码网推荐  488 //保存设置的结果
源代码网推荐  489 if( this.xmlFilePathType == enumXmlPathType.AbsolutePath )
源代码网推荐  490 {
源代码网推荐  491 Savexml( xmlFilePath ) ;
源代码网推荐  492 }
源代码网推荐  493 else if( this.xmlFilePathType == enumXmlPathType.VirtualPath )
源代码网推荐  494 {
源代码网推荐  495 Savexml(HttpContext.Current.Server.MapPath(xmlFilePath)) ;
源代码网推荐  496 }
源代码网推荐  497 }
源代码网推荐  498 catch(XmlException xmle)
源代码网推荐  499 {
源代码网推荐  500 throw xmle;
源代码网推荐  501 }
源代码网推荐  502 }
源代码网推荐  503
源代码网推荐  504 /**//// <summary>
源代码网推荐  505 /// 功能:
源代码网推荐  506 /// 保存XML文件
源代码网推荐  507 /// </summary>
源代码网推荐  508 public void SaveXmlDocument(string tempXMLFilePath)
源代码网推荐  509 {
源代码网推荐  510 try
源代码网推荐  511 {
源代码网推荐  512 //保存设置的结果
源代码网推荐  513 Savexml(tempXMLFilePath);
源代码网推荐  514 }
源代码网推荐  515 catch(XmlException xmle)
源代码网推荐  516 {
源代码网推荐  517 throw xmle;
源代码网推荐  518 }
源代码网推荐  519 }
源代码网推荐  520 /**//// <summary>
源代码网推荐  521 ///
源代码网推荐  522 /// </summary>
源代码网推荐  523 /// <param name="filepath"></param>
源代码网推荐  524 private void Savexml(string filepath)
源代码网推荐  525 {
源代码网推荐  526 xmlDoc.Save(filepath);
源代码网推荐  527 }
源代码网推荐  528
源代码网推荐  529 #endregion
源代码网推荐  530
源代码网推荐  531 }
源代码网推荐  532
源代码网推荐  533}
源代码网推荐  534
源代码网推荐  535
源代码网推荐  
源代码网推荐  
源代码网推荐    做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。
源代码网推荐


源代码网供稿.
网友评论 (0)
会员中心
网络编程
本站推荐
网络编程之精华