A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© czwanglei 金牌黑马   /  2014-7-16 17:46  /  1126 人查看  /  1 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. <div class="blockcode"><blockquote> /// <summary>
  2.         /// 依据匹配XPath表达式的第一个节点来创建它的子节点(如果此节点已存在则追加一个新的同名节点
  3.         /// </summary>
  4.         /// <param name="xmlFileName">XML文档完全文件名(包含物理路径)</param>
  5.         /// <param name="xpath">要匹配的XPath表达式(例如:"//节点名//子节点名</param>
  6.         /// <param name="xmlNodeName">要匹配xmlNodeName的节点名称</param>
  7.         /// <param name="innerText">节点文本值</param>
  8.         /// <param name="xmlAttributeName">要匹配xmlAttributeName的属性名称</param>
  9.         /// <param name="value">属性值</param>
  10.         /// <returns>成功返回true,失败返回false</returns>
  11.         public static bool CreateXmlNodeByXPath(string xmlFileName, string xpath, string xmlNodeName, string innerText, string xmlAttributeName, string value)
  12.         {
  13.             bool isSuccess = false;
  14.             XmlDocument xmlDoc = new XmlDocument();
  15.             try
  16.             {
  17.                 xmlDoc.Load(xmlFileName); //加载XML文档
  18.                 XmlNode xmlNode = xmlDoc.SelectSingleNode(xpath);
  19.                 if (xmlNode != null)
  20.                 {
  21.                     //存不存在此节点都创建
  22.                     XmlElement subElement = xmlDoc.CreateElement(xmlNodeName);
  23.                     subElement.InnerXml = innerText;

  24.                     //如果属性和值参数都不为空则在此新节点上新增属性
  25.                     if (!string.IsNullOrEmpty(xmlAttributeName) && !string.IsNullOrEmpty(value))
  26.                     {
  27.                         XmlAttribute xmlAttribute = xmlDoc.CreateAttribute(xmlAttributeName);
  28.                         xmlAttribute.Value = value;
  29.                         subElement.Attributes.Append(xmlAttribute);
  30.                     }

  31.                     xmlNode.AppendChild(subElement);
  32.                 }
  33.                 xmlDoc.Save(xmlFileName); //保存到XML文档
  34.                 isSuccess = true;
  35.             }
  36.             catch (Exception ex)
  37.             {
  38.                 throw ex; //这里可以定义你自己的异常处理
  39.             }
  40.             return isSuccess;
  41.         }
复制代码



1 个回复

倒序浏览
值得学习ing!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马