一、XmlHelper

 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Web;
 using System.Xml;
 using System.Xml.Linq;
 using System.Xml.Xsl;

 namespace CommonFoundation.Common
 {
     public class XmlHelper
     {

         #region 命名空间
         /// <summary>
         /// 创建xml命名空间
         /// </summary>
         /// <param name="doc"></param>
         /// <returns></returns>
         public static XmlNamespaceManager CreateXmlNameSpaceMgr(XmlDocument doc)
         {
             XmlNamespaceManager xmlnsManager = null;
             if (doc != null)
             {
                 xmlnsManager = new XmlNamespaceManager(doc.NameTable);
                 xmlnsManager.AddNamespace("xml", "http://www.w3.org/XML/1998/namespace");
             }
             return xmlnsManager;
         }
         #endregion

         #region 创建文档
         /// <summary>
         /// 创建xml文档
         /// </summary>
         /// <param name="str"></param>
         /// <returns></returns>
         public static XmlDocument CreateXmlDocument(string str)
         {
             XmlDocument doc = null;
             if (!string.IsNullOrEmpty(str))
             {
                 doc = new XmlDocument();
                 doc.LoadXml(str);
             }
             return doc;
         }
         #endregion

         #region 创建xsl
         /// <summary>
         /// 创建XslTransform
         /// </summary>
         /// <param name="path"></param>
         /// <returns></returns>
         public static XslTransform CreateXslTransform(string path)
         {
             XslTransform xslt = null;

             if (!string.IsNullOrEmpty(path))
             {
                 xslt = new XslTransform();
                 xslt.Load(HttpContext.Current.Server.MapPath(path));
             }

             return xslt;
         }
         #endregion

         #region 获取
         /// <summary>
         /// 获得xml节点
         /// </summary>
         /// <param name="docPath"></param>
         /// <param name="nodePath"></param>
         /// <returns></returns>
         public static XmlNode GetRootNode(string docPath, string nodePath)
         {
             XmlNode ret = null;
             if (!string.IsNullOrEmpty(docPath) && !string.IsNullOrEmpty(nodePath))
             {
                 ret = TPI.CommonFunc.XmlAdapter.GetRoot(docPath, nodePath);
             }
             return ret;
         }
         /// <summary>
         /// 获得xml节点
         /// </summary>
         /// <param name="docPath"></param>
         /// <param name="nodePath"></param>
         /// <returns></returns>
         public static XmlNode GetXmlNode(string docPath, string nodePath)
         {
             XmlNode ret = null;
             if (!string.IsNullOrEmpty(docPath) && !string.IsNullOrEmpty(nodePath))
             {
                 string xmlPath = HttpContext.Current.Server.MapPath(docPath);
                 ret = TPI.CommonFunc.XmlAdapter.GetRoot(xmlPath, nodePath);
             }
             return ret;
         }
         /// <summary>
         /// 获得xml节点
         /// </summary>
         /// <param name="doc"></param>
         /// <param name="nodePath"></param>
         /// <returns></returns>
         public static XmlNode GetXmlNode(XmlDocument doc, string nodePath)
         {
             return GetXmlNode(doc, nodePath, null);
         }
         /// <summary>
         /// 获得xml节点
         /// </summary>
         public static XmlNode GetXmlNode(XmlDocument doc, string nodePath, XmlNamespaceManager xmlnsManager)
         {
             XmlNode node = null;

             if (doc != null && !string.IsNullOrEmpty(nodePath))
             {
                 //添加命名空间

                 node = xmlnsManager == null ? doc.SelectSingleNode(nodePath) : doc.SelectSingleNode(nodePath, xmlnsManager);
             }

             return node;
         }
         /// <summary>
         /// 获得xml节点
         /// </summary>
         /// <param name="rootNode"></param>
         /// <param name="nodePath"></param>
         /// <returns></returns>
         public static XmlNode GetXmlNode(XmlNode rootNode, string nodePath)
         {
             return GetXmlNode(rootNode, nodePath, null);
         }
         /// <summary>
         /// 获得xml节点
         /// </summary>
         /// <returns></returns>
         public static XmlNode GetXmlNode(XmlNode rootNode, string nodePath, XmlNamespaceManager xmlnsManager)
         {
             XmlNode node = null;

             if (rootNode != null && !string.IsNullOrEmpty(nodePath))
             {
                 node = xmlnsManager == null ? rootNode.SelectSingleNode(nodePath) : rootNode.SelectSingleNode(nodePath, xmlnsManager);
             }

             return node;
         }

         /// <summary>
         /// 选择多个节点
         /// </summary>
         /// <param name="rootNode"></param>
         /// <param name="nodePath"></param>
         /// <returns></returns>
         public static XmlNodeList GetXmlNodeList(XmlNode rootNode, string nodePath)
         {
             return GetXmlNodeList(rootNode, nodePath, null);
         }
         /// <summary>
         /// 选择多个节点
         /// </summary>
         /// <param name="rootNode"></param>
         /// <param name="nodePath"></param>
         /// <param name="xmlnsManager"></param>
         /// <returns></returns>
         public static XmlNodeList GetXmlNodeList(XmlNode rootNode, string nodePath, XmlNamespaceManager xmlnsManager)
         {
             XmlNodeList list = null;

             if (rootNode != null && !string.IsNullOrEmpty(nodePath))
             {
                 list = xmlnsManager == null ? rootNode.SelectNodes(nodePath) : rootNode.SelectNodes(nodePath, xmlnsManager);
             }

             return list;
         }
         /// <summary>
         /// 选择多个节点
         /// </summary>
         /// <param name="doc"></param>
         /// <param name="nodePath"></param>
         /// <returns></returns>
         public static XmlNodeList GetXmlNodeList(XmlDocument doc, string nodePath)
         {
             return GetXmlNodeList(doc,nodePath,null);
         }
         /// <summary>
         /// 选择多个节点
         /// </summary>
         /// <param name="doc"></param>
         /// <param name="nodePath"></param>
         /// <param name="xmlnsManager"></param>
         /// <returns></returns>
         public static XmlNodeList GetXmlNodeList(XmlDocument doc ,string nodePath,XmlNamespaceManager xmlnsManager)
         {
             XmlNodeList list = null;

             if (doc != null && !string.IsNullOrEmpty(nodePath))
             {
                 list = xmlnsManager == null ? doc.SelectNodes(nodePath) : doc.SelectNodes(nodePath, xmlnsManager);
             }

             return list;
         }

         /// <summary>
         /// 获得xml节点内容
         /// </summary>
         /// <param name="rootNode"></param>
         /// <param name="nodePath"></param>
         /// <returns></returns>
         public static string GetXmlNodeText(XmlNode rootNode, string nodePath)
         {
             return GetXmlNodeText(rootNode, nodePath, null);
         }
         /// <summary>
         /// 获得xml节点内容
         /// </summary>
         /// <param name="rootNode"></param>
         /// <param name="nodePath"></param>
         /// <returns></returns>
         public static string GetXmlNodeText(XmlNode rootNode, string nodePath, XmlNamespaceManager xmlnsManager)
         {
             string ret = string.Empty;

             if (rootNode != null && !string.IsNullOrEmpty(nodePath))
             {
                 XmlNode node = GetXmlNode(rootNode, nodePath, xmlnsManager);
                 if (node != null)
                 {
                     ret = node.InnerText;
                 }
             }

             return ret;
         }
         /// <summary>
         /// 获得xml节点内容
         /// </summary>
         /// <param name="rootNode"></param>
         /// <param name="nodePath"></param>
         /// <returns></returns>
         public static string GetXmlNodeText(XmlDocument doc, string nodePath)
         {
             return GetXmlNodeText(doc, nodePath, null);
         }
         /// <summary>
         /// 获得xml节点内容
         /// </summary>
         /// <param name="rootNode"></param>
         /// <param name="nodePath"></param>
         /// <returns></returns>
         public static string GetXmlNodeText(XmlDocument doc, string nodePath, XmlNamespaceManager xmlnsManager)
         {
             string ret = string.Empty;

             if (doc != null && !string.IsNullOrEmpty(nodePath))
             {
                 //添加命名空间

                 XmlNode node = GetXmlNode(doc, nodePath, xmlnsManager);
                 if (node != null)
                 {
                     ret = node.InnerText;
                 }
             }

             return ret;
         }
         //public static string G
         #endregion

     }
 }

XmlHelper

xml结构的更多相关文章

  1. Ant:build.xml 结构

     Ant build.xml 结构 project target task data property datatype v\:* {behavior:url(#default#VML);} o\:* ...

  2. XML结构文件的读写

    附件:http://files.cnblogs.com/xe2011/XML_Writer_And_Read.rar 下面这段代码实现了以下功能 数据保存 textBox1的文本,textBox2的文 ...

  3. TestNG关键字和testNG.xml结构学习

    转自官网:http://testng.org/doc/documentation-main.html#test-results TestNG关键字 @BeforeSuite@AfterSuite@Be ...

  4. Android Manifest.xml 结构详解

    关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activities ...

  5. 当xml结构很深时候 可以通过父节点删除子元素

    当xml结构很深时候 可以通过父节点删除子元素

  6. 判断字符串string是数字、json结构、xml结构

    import org.json.JSONException; import org.json.JSONObject; import org.dom4j.DocumentException; impor ...

  7. 推断字符串string是数字、json结构、xml结构

    import org.json.JSONException; import org.json.JSONObject; import org.dom4j.DocumentException; impor ...

  8. xml基础之二(XML结构【2】)DTD文档模版

    xml基础之二(XML结构[2])DTD文档模版 xml 模板 文档结构  我们知道XML主要用于数据的存储和传输,所以无论是自定义还是外部引用DTD模板文档,都是为了突出数据的存储规范.DTD(文档 ...

  9. xml基础之二(XML结构【1】)

    xml基础之二(XML结构[1]) 新建 模板 小书匠  XML结构 XML结构 1.1 元素:被开始标签和结束标签所包裹的内容,(红色部分),蓝色部分也是元素,由于其仅有词语和句子,可细分为文本元素 ...

  10. XML - 十分钟了解XML结构以及DOM和SAX解析方式

    引言 NOKIA 有句著名的广告语:"科技以人为本".不论什么技术都是为了满足人的生产生活须要而产生的.详细到小小的一个手机.里面蕴含的技术也是浩如烟海.是几千年来人类科技的结晶, ...

随机推荐

  1. (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在

    问题描述:在用vs生成MVC时若使用Internet应用程序为模版,项目建好后重新编译下无法通过,弹出错误: 解决方案:问题出来后,询问了身边很多人都是一头雾水,于是乎各种谷歌和百度,还好功夫不负有心 ...

  2. cocos2d-x 中添加显示文字的三种方式 LabelTTF 、LabelBMFont 和 LabelAtlas

    在 cocos2d-x 中有三个类可以在层或精灵中添加文字: LabelTTF LabelBMFont LabelAtlas LabelTTF 直接支持使用 TTF 字库,可以支持全部的中文,但是效率 ...

  3. http是什么?

    http HyperText Transfer Protocol 超文本传输协议,是一个应用层通信协议. 可以用wireshark抓取.

  4. maven的安装与配置

    1.下载相应版本的maven安装包(压缩文件) http://maven.apache.org/download.cgi 2.环境变量配置 将下载的压缩包解压. 计算机===>属性=====&g ...

  5. openerp权限设置总结

    Openerp权限设置 最近一直在弄openerp权限问题,现在终于懂了一些.主要对模块下的security 目录下的文件:xxx_security.xml.ir.model.access.csv进行 ...

  6. HTTP协议——学习资料小结

    嗯,这几天回头再次的学习Servlet的知识点,觉得HTTP协议的内容是相当重要的,现在虽然知道浏览器与应用程序的交互离不开它,但是怎么将信息从浏览器传输到服务器的这个知识点还是一个盲点.于是从网上找 ...

  7. 酒鬼-DP

    Description Santo刚刚与房东打赌赢得了一间在New Clondike 的大客厅.今天,他来到这个大客厅欣赏他的奖品.房东摆出了一行瓶子在酒吧上.瓶子里都装有不同体积的酒.令Santo高 ...

  8. MVC中使用过滤器记录异常日志

    using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace Filte ...

  9. ES6生成器基础

    ES6引进的最令人兴奋的特性就是一种新的函数生成方式,称为生成器(generator).名称有点奇怪,但是第一眼看上去行为更加奇怪.文章主要介绍生成器如何工作,然后让你明白为什么他们对于未来的JS会有 ...

  10. C++ 学习基础一

    1.预处理器指示符如果文件名用尖括号“<”和”>”括起来的,则表示该文件是工程或标准头文件,查找过程会检查预定义的目录.如果文件名用双引号括起来,则表示该文件是用户自定义的头文件,查找该文 ...