c# 处理带namespace 的 xml

XmlDocument doc = new XmlDocument();
doc.Load(localxml + "\\" + Path.GetFileName(xinhuaxml));
System.Xml.XmlElement root = doc.DocumentElement;
string namespaces = root.NamespaceURI;
System.Xml.XmlNamespaceManager nsMgr = new System.Xml.XmlNamespaceManager(doc.NameTable);
nsMgr.AddNamespace("apxh", "http://www.w3.org/1999/xhtml");
nsMgr.AddNamespace("apcm", "http://ap.org/schemas/03/2005/apcm");
nsMgr.AddNamespace("ns", namespaces);
string creattime = root.SelectSingleNode(@"//ns:updated", nsMgr).InnerText;
string headlinetxt = root.SelectSingleNode(@"//apcm:SlugLine", nsMgr).InnerText;
string category = root.SelectSingleNode(@"//ns:category", nsMgr).InnerText;
XmlNode content = root.SelectSingleNode(@"//ns:content", nsMgr);

时间: 2024-11-07 15:00:06

c# 处理带namespace 的 xml的相关文章

使用XLinq.XElement读取带Namespace(命名空间)的XML

简介 本文主要介绍通过XELemet去读取含有namespaces(xmlns)的XML,这也是偶然间发现这个问题的,一个群里的小伙伴突然问起这个,以此记录一下. 背景 一个XML文档可能包括来自多个XML词汇表的元素或属性,如果每一个词汇表指派一个命名空间,那么相同名字的元素或属性之间的名称冲突就可以解决. 举一个简单的例子来说,在一个订单的XML文档中需要引用到客户和所购买的产品,customer元素和product元素可能都有一个叫做id的子元素.这时候要引用id元素会造成名称冲突,但是如

创建带属性的XML文档

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xml; namespace 创建带属性的XML文档 { class Program { static void Main(string[] args) { XmlDocument doc = new XmlDocument(); XmlDe

使用boost::property_tree生成带attribute的xml

以前写过一篇"使用Boost property tree来解析带attribute的xml", 可是还有姐妹篇一直没贴.看看前一篇贴了都快都快3年了,时间过的真快. 这一小篇就算是下篇吧,即用boost::property_tree生成带attribute的xml. 直接看demo code: #include <iostream> #include <sstream> #include <boost/property_tree/xml_parser.hp

带命名空间的XML的dom4j应用&lt;转&gt;

Element root = document.getRootElement();     List   recordenvlist = document.selectNodes("//gml:envelope");     //gml:envelope 提示 NoClassDefFoundError org.dom4j.DocumentFactory.createXPath 原因:dom4j的xpath api依赖jaxen完成解决方法:在系统中加入jaxen.jar.jaxen.j

Modifying namespace in XML document programmatically

Modifying namespace in XML document programmatically I needed to validate an XML document with a given XSD document. Seems easy enough… so let’s have a look at the schema first: <?xml version="1.0" encoding="utf-8"?><xs:schema

C# 解析带命名空间的xml

xml <?xml version="1.0" encoding="utf-8"?> <string xmlns="http://tempuri.org/">发票代码:012001800311 发票号码:24961816 开票日期:2019-04-02 购方企业名称:购方纳税号:913101140781x22VV1 销方企业名称:清出公司 销方纳税号:911201163409833307 价税合计:4 金额:94.76 税

linq 解析 带命名空间的xml

前言:xml的操作方式有多种,但要论使用频繁程度,博主用得最多的还是Linq to xml的方式,觉得它使用起来很方便,就用那么几个方法就能完成简单xml的读写.之前做的一个项目有一个很变态的需求:C#项目调用不知道是什么语言写的一个WebService,然后添加服务引用总是失败,通过代理的方式动态调用也总是报错,最后没办法,通过发送原始的WebRequest请求直接得到对方返回的一个xml文件.注意过webservice的wsdl文件的朋友应该知道这个是系统生成的xml文件,有点复杂,研究了半

读取带命名空间的Xml文档的方法备忘

很久没有做xml方面的解析,今天接到一个小任务,需要解析xml里面的字段内容,顺带复习了一下xpath方面的知识.需要解析的xml是那种待namespace的文档,一开始解析就碰到问题,我就感觉是命名空间在作怪,印象中之前也处理过这种问题,但时间久远,都忘记了,也没有记录下来. 折腾了一会总算找到了方法,.NET中读取带xml命名空间的xml文档的方式确实麻烦,不够直接.不管怎样,还是记录一下解决方法,省得以后又要被折腾一次. StringReader textReader = new Stri

dom4j解析Xml,dom4j解析带命名空间的Xml内容,dom4j解析xml为实体类

首先引入maven: <dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>1.6.1</version> </dependency> <dependency> <groupId>jaxen</groupId> <artifactId>jaxen</arti