C#之读取web上的xml
一、使用LINQ读取
使用Xdocument上的Load方法,可以快速的加载一个XML文档,然后使用LINQ对 加载XML文档进行查询或其他操作,这里仅简单偏历。所以,一旦查询一组元素有返回元素集,就可以使用一个简单的foreach循环访问每一个元素。核心代码如下:
/// <summary>
/// 使用LINQ读取web上的xml
/// </summary>
public static void UseLINQ()
{
string sURL = "http://localhost:9058/GameServerInfo/XMLFile.xml";
XDocument oXDoc = XDocument.Load(sURL);
var qurey = from e in oXDoc.Descendants()
where e.NodeType == XmlNodeType.Element
select new
{
ElementName=e.Name.ToString(),
ElementValue=e.Value
};
foreach(var elementInfo in qurey)
{
HttpContext.Current.Response.Write(string.Format("ElementName->{0} ElementValue->{1}<br />", elementInfo.ElementName, elementInfo.ElementValue));
}
}
二、使用XmlReader构造函数
当然还可以通过使用带有URL的XmlReader.Create方法来完成操作,它使用的是一个XmlUrlResolver类的一个实例检测传入的URL,然后打开一个通向由该URL代表的XML文档流。为了指定阅读器上的设置,可以使用另一个Create的重载,它也通过一个XmlReaderSetting实例完成这一目的。代码如下:
/// <summary>
/// 使用XmlReader构造函数
/// </summary>
public static void UseXmlReader()
{
string sURL = "http://localhost:9058/GameServerInfo/XMLFile.xml";
using(XmlReader read=XmlReader.Create(sURL))
{
while(read.Read())
{
switch (read.NodeType)
{
case XmlNodeType.Element:
HttpContext.Current.Response.Write(string.Format("ElementName->{0} <br />", read.Name));
break;
case XmlNodeType.Text:
HttpContext.Current.Response.Write(string.Format("ElementValue->{0}<br />", read.Value));
break;
case XmlNodeType.CDATA:
HttpContext.Current.Response.Write(string.Format("ElementValue->{0}<br />", read.Value));
break;
//other
}
}
}
}
三、实例代码下载
代码下载:
转:http://www.cnblogs.com/tjdxlmy/archive/2009/08/01/1536574.html
C#之读取web上的xml的更多相关文章
- AS与.net的交互——加载web上的xml
最近搞了个私活,需要用as去加载一个网站的xml,不过本人as也不咋滴,就去看看怎么玩,看完之后也蛮简单的. 由于业务上比较复杂,就随便说个小例子吧. 很多时候,为了页面区域更加灵活,生动,有吸引力, ...
- Java EE: XML Schemas for Java EE Deployment Descriptors(Java Web的web.xml头web-app标签上的XML模式)
继上几篇文章 http://www.cnblogs.com/EasonJim/p/6221952.html http://www.cnblogs.com/EasonJim/p/6959120.html ...
- 前端之web上传文件的方式
前端之web上传文件的方式 本节内容 web上传文件方式介绍 form上传文件 原生js实现ajax上传文件 jquery实现ajax上传文件 form+iframe构造请求上传文件 1. web上传 ...
- C#读取网络流,读取网络上的js文件
写博客的目的就是让其他人少走弯路. C#读取网络上的流和js文件出现的问题 一开始看了今天博客园上的推荐文章,用C#+HtmlAgilityPack+XPath带你采集数据(以采集天气数据为例子),然 ...
- 第九篇:web之前端之web上传文件的方式
前端之web上传文件的方式 前端之web上传文件的方式 本节内容 web上传文件方式介绍 form上传文件 原生js实现ajax上传文件 jquery实现ajax上传文件 form+iframe构 ...
- 译-Web Service剖析: XML, SOAP 和WSDL 用于独立于平台的数据交换
本文是翻译内容,原文参见: Anatomy of a Web Service: XML, SOAP and WSDL for Platform-independent Data Exchange We ...
- iis设置默认文档,提示web.config配置xml格式不正确
网站上传后,配置默认文档,提示web.config配置xml格式不正确,几经尝试,发现是sqlserver密码中的“&”符号惹的祸,web.config文件中不能使用该字符.分享出来,大家遇到 ...
- 雷林鹏分享:服务器上的 XML
服务器上的 XML XML 文件是类似 HTML 文件的纯文本文件. XML 能够通过标准的 Web 服务器轻松地存储和生成. 在服务器上存储 XML 文件 XML 文件在 Internet 服务器上 ...
- poi 读取使用 Strict Open XML 保存的 excel 文档
poi 读取使用 Strict Open XML 保存的 excel 文档 某项目有一个功能需要读取 excel 报表内容,使用poi读取时报错: 具体错误为: org.apache.poi.POIX ...
随机推荐
- SQL基础分类
我们可以把学习过的sql语言,进行分类: 1. DDL : 数据定义语言 a) 操作库表结构的语言. Create drop alter 2. DML : 数据操作语言 a) 操作数据的语言: upd ...
- 1334: [Baltic2008]Elect
Description N个政党要组成一个联合内阁,每个党都有自己的席位数. 现在希望你找出一种方案,你选中的党的席位数要大于总数的一半,并且联合内阁的席位数越多越好. 对于一个联合内阁,如果某个政党 ...
- 关于HTML5代码总结。
在阅读完HTML5后,自己把一些常用的代码总结了一下,自认为比较全,如果有什么错误请指出. 1.<!DOCTYPE html>声明这是一个HTML5的页面 2.<HTML lang= ...
- python基础语法(1)
一.基本概念 1. python中数有四种类型:整数.长整数.浮点数和复数. 整数, 如 1 长整数 是比较大的整数 浮点数 如 1.23.3E-2 复数 如 1 + 2j. 1.1 + 2.2j 2 ...
- 图层的核心动画(CABaseAnimation)
Main.storyboard // // ViewController.m // 7A14.图层的核心动画 // // Created by huan on 16/2/4. // Copyr ...
- iOS 设置navigationBar背景
- (void)viewWillAppear:(BOOL)animated { [superviewWillAppear:animated]; [self.navigationContro ...
- day4----生成器,迭代器
迭代器,生成器,装饰器 1.生成器 通过列表生成式,我们可以直接创建一个列表.但是,受到内存限制,列表容量肯定是有限的.而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要 ...
- hdu 4651 - Partition(五边形数定理)
定理详见维基百科....http://zh.wikipedia.org/wiki/%E4%BA%94%E9%82%8A%E5%BD%A2%E6%95%B8%E5%AE%9A%E7%90%86 代码如下 ...
- [ASE][Daily Scrum]11.21
由于服务器广播那边进度稍慢,所以这几天client和view那边先来做无限地图这部分, View Shilin Liu 不同地图块无缝拼接 当tank走到地图块边缘时从服务器请求新的地图块 ...
- Dynamic CRM 2013学习笔记(八)过滤查找控件 (类似省市联动)
我们经常要实现类似省市联动一样的功能,常见的就是二个查找控件,一个选择了省后,另一个市的查找控件就自动过滤了,只显示当前省下的市,而不是所有的市.当然这是最简单的,实际工作中还有更复杂的功能要通过过滤 ...