读取xml格式的字符串和上下文中的xml数据
1、读取xml格式的字符串
假设有一段下面的xml格式的字符串:
<xml>
<return_code><![CDATA[SUCCESS]]></return_code>
<return_msg><![CDATA[OK]]></return_msg>
</xml>
定义类ClientResponseHandler.cs
public class ClientResponseHandler
{
protected Hashtable xmlMap;
/* 设置xml字符串 */
public virtual void setContent(string content)
{
this.content = content;
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(content);
XmlNode root = xmlDoc.SelectSingleNode("xml");
XmlNodeList xnl = root.ChildNodes; foreach (XmlNode xnf in xnl)
{
xmlMap.Add(xnf.Name, xnf.InnerText);
}
} /* 设置xml字符串 */
public virtual void setContent(string content)
{
this.content = content;
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(content);
XmlNode root = xmlDoc.SelectSingleNode("xml");
XmlNodeList xnl = root.ChildNodes; foreach (XmlNode xnf in xnl)
{
xmlMap.Add(xnf.Name, xnf.InnerText);
}
} }
调用:
rescontent = ""; //假设这里是一段xml格式的字符串
ClientResponseHandler resHandler = new ClientResponseHandler();
resHandler.setContent(rescontent);
string return_code = resHandler.getMpParameter("return_code"); //return_code是xml节点名称,返回SUCCESS
string return_msg = resHandler.getMpParameter("return_msg"); //return_code是xml节点名称,返回OK
2、从上下文(Context)读取xml文件流
假设上下文中(Context)包含一段xml的字符串文件流,同上面格式。
public class ResponseHandler
{
private Hashtable xmlMap; public ResponseHandler(HttpContext httpContext)
{
if (this.httpContext.Request.InputStream.Length > )
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(this.httpContext.Request.InputStream);//这里与上面不同
XmlNode root = xmlDoc.SelectSingleNode("xml");
XmlNodeList xnl = root.ChildNodes;
foreach (XmlNode xnf in xnl)
{
xmlMap.Add(xnf.Name, xnf.InnerText);
}
}
} /* 获取参数值 */
public string getMpParameter(string parameter)
{
string s = (string)xmlMap[parameter];
return (null == s) ? "" : s;
}
}
调用:
ResponseHandler resHandler = new ResponseHandler(Context);//Context 是HttpContext
string return_code = resHandler.getMpParameter("return_code"); //return_code是xml的节点,返回SUCCESS string return_msg = resHandler.getMpParameter("return_msg"); //return_msg是xml的节点,返回OK
读取xml格式的字符串和上下文中的xml数据的更多相关文章
- Java中XML格式的字符串4读取方式的简单比较
Java中XML格式的字符串4读取方式的简单比较 1.java自带的DOM解析. import java.io.StringReader; import javax.xml.parsers.Docum ...
- Dom4j解析xml格式的字符串【java】
一般我们会使用dom4j.SAX.w3c来解析xml文件,网上也大多提供此类解决方案. 但在实际项目中,也有会解析xml格式的字符串报文的. 比如,有如下字符串: String = "< ...
- 使用WCF传输DataTable:DataTable和Xml格式的字符串相互转换(C#)
背景:项目中要用到客户端向服务端传数据,使用WCF,绑定webHttpBinding,做了一个小例子. 业务逻辑简介:客户端在a表中添加了几条数据,从SQL Server数据库直接取出新添加的数据(D ...
- soapui如何发送xml格式的字符串
一个服务需要的xml格式的字符串参数,用soapUI传递参数时要这样写: <![CDATA[<?xml version="1.0" encoding="UTF ...
- java解析Xml格式的字符串
最近在工作中,需要调别的接口,接口返回的是一个字符串,而且内容是xml格式的,结果在解析json的时候报错,最终修改了接口的返回方式,以Map返回, 才得以接收到这个xml的字符串,然后通过dom4j ...
- 使用dom4j修改XML格式的字符串
XML格式 <data> <ryzd> <record> <western> <record> <diagnoses> < ...
- (转载)将一段符合XML格式规范字符串插入已有XML文档当中
想我们已经存在一个XML文档,结构如下: < xmlversion="1.0"encoding="utf-8">< employees&g ...
- C# asp.net XML格式的字符串显示不全
前台显示XML字符串显示不全 后台XML字符串使用<xmp></xmp>将XML格式字符串括起来
- C# 解析XML格式的字符串
public CreateOrderReturnResult GetCreateOrderReturnApi() { var result = new CreateOrderReturnResult( ...
随机推荐
- CNTK 搞深度学习-1
CNTK 搞深度学习 Computational Network Toolkit (CNTK) 是微软出品的开源深度学习工具包.本文介绍CNTK的基本内容,如何写CNTK的网络定义语言,以及跑通一个简 ...
- vue使用改变element-ui主题色
每个项目的主题色一般都不一样,直接用element-ui的默认主题色似乎有点不合适,还需要自己一个一个的找元素class名然后在修改样式,非常麻烦,还容易影响到包含该类名的其他元素样式,所以需要自定义 ...
- (转)Vim练级攻略
(转)Vim练级攻略 原文链接:http://coolshell.cn/articles/5426.html vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆 ...
- Android layer-list的属性和使用具体解释
Android layer-list的属性和使用具体解释.layer-list是用来多个图层堆叠显示的,借这个特性能够做一些特别的效果(比方:阴影.以下的效果等),也能够投机取巧. 1.代码片 < ...
- js进阶 12-7 pageY和screenY以及clientY的区别是什么
js进阶 12-7 pageY和screenY以及clientY的区别是什么 一.总结 一句话总结:pageY是距文件,screenY是获取显示器屏幕位置的坐标,clientY是页面视口. 没有滚动条 ...
- linux下U盘状态检测
Linux的文件系统是异步的,也就是说写一个文件不是立刻保存到介质(硬盘,U盘等)中,而是存到缓冲区内,等积累到一定程度再一起保存到介质中.如果没有umount就非法拔出U盘,程序是不知道的,fope ...
- Caffe 学习:Crop 层
在Fully Convolutional Networks(FCN)中,会用到Crop 层,他的主要作用是进行裁切.下面我们举一个例子来说明如何使用Crop 层. Caffe中的数据是以 blobs形 ...
- LDR: LdrpWalkImportDescriptor() failed to probe C:\WINDOWS\system32\opencv_core243d.dll for its manifest, ntstatus 0xc0150002
LDR: LdrpWalkImportDescriptor() failed to probe C:\WINDOWS\system32\opencv_core243d.dll for its mani ...
- ArcGIS Spatial Query
Creates a spatial query which performs a spatial search for features in the supplied feature class a ...
- [PReact] Handle Simple Routing with preact-router
Some applications only need a very minimal routing solution. This lesson will cover a practical exam ...