xml结构
一、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结构的更多相关文章
- Ant:build.xml 结构
Ant build.xml 结构 project target task data property datatype v\:* {behavior:url(#default#VML);} o\:* ...
- XML结构文件的读写
附件:http://files.cnblogs.com/xe2011/XML_Writer_And_Read.rar 下面这段代码实现了以下功能 数据保存 textBox1的文本,textBox2的文 ...
- TestNG关键字和testNG.xml结构学习
转自官网:http://testng.org/doc/documentation-main.html#test-results TestNG关键字 @BeforeSuite@AfterSuite@Be ...
- Android Manifest.xml 结构详解
关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activities ...
- 当xml结构很深时候 可以通过父节点删除子元素
当xml结构很深时候 可以通过父节点删除子元素
- 判断字符串string是数字、json结构、xml结构
import org.json.JSONException; import org.json.JSONObject; import org.dom4j.DocumentException; impor ...
- 推断字符串string是数字、json结构、xml结构
import org.json.JSONException; import org.json.JSONObject; import org.dom4j.DocumentException; impor ...
- xml基础之二(XML结构【2】)DTD文档模版
xml基础之二(XML结构[2])DTD文档模版 xml 模板 文档结构 我们知道XML主要用于数据的存储和传输,所以无论是自定义还是外部引用DTD模板文档,都是为了突出数据的存储规范.DTD(文档 ...
- xml基础之二(XML结构【1】)
xml基础之二(XML结构[1]) 新建 模板 小书匠 XML结构 XML结构 1.1 元素:被开始标签和结束标签所包裹的内容,(红色部分),蓝色部分也是元素,由于其仅有词语和句子,可细分为文本元素 ...
- XML - 十分钟了解XML结构以及DOM和SAX解析方式
引言 NOKIA 有句著名的广告语:"科技以人为本".不论什么技术都是为了满足人的生产生活须要而产生的.详细到小小的一个手机.里面蕴含的技术也是浩如烟海.是几千年来人类科技的结晶, ...
随机推荐
- ASP.NET MVC开发微信(三)
- linux tar 命令 --致力于“一眼看懂,随手就用”的随笔
基本玩法: 压缩: tar -czf txt.tar.gz *.txt // 将当前目录下的所有txt文件,创建一个tar包,并用gzip算法,压缩成txt.tar.gz 文件 解压: tar -xz ...
- Solr数据库连接之多表关联
Solr环境配置好后,有很多时候我们需要把数据库里的数据添加到索引里,这时就需要配置跟数据库的连接,下面我们看配置的步骤. 1. 配置 solrconfig.xml (在slor 主目录 core ...
- NOIP总结
拿到题目先写裸的暴力,暴力一定要写对,没想出正解有暴力垫底,想出了正解也可以拿来拍 过了样例之后一定要造数据测,数据越坑越好 一定要造极限数据,哪怕造不知道答案的数据都行,主要是检测RE和TLE,正确 ...
- C++静态代码分析工具推荐——PVS-Studio
长假归来,最近一直没更新,节前本来就想写这篇了,一直到今天才有时间. 关于静态代码分析在维基百科上可以查到很详细的介绍:https://en.wikipedia.org/wiki/List_of_to ...
- MatlabR2014a 安装破解详细图文教程(附下载链接(内附CVX工具箱))
MATLAB和Mathematica.Maple并称为三大数学软件.它在数学类科技应用软件中在数值计算方面首屈一指.MATLAB可以进行矩阵运算.绘制函数和数据.实现算法.创建用户界面.连接其他编程语 ...
- Orchard官方文档翻译(四) 让Orchard在WebMatrix下工作
原文地址:http://docs.orchardproject.net/Documentation/Working-with-Orchard-in-WebMatrix 想要查看文档目录请用力点击这里 ...
- Digest [information value filtering]
http://oak.cs.ucla.edu/~cho/papers/cho-filter.pdf 最近对评估方法进行研究,这篇paper是一种对IR方法进行总结,不错的角度,也比较全面
- Linux自动化安装cobbler
1介绍 1.1 PXE PXE技术与RPL技术不同之处为RPL是静态路由,PXE是动态路由.RPL是根据网卡上的ID号加上其他记录组成的一个Frame(帧)向服务器发出请求.而服务器中已有这个ID数据 ...
- CLRS:max_heap and min_heap operation (pseudocode)
//max_heap heap_maximum:return A[1] O(1); Extract_Heap_maximum:swap(A[1],A[heap.size]) adjust ...