博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
读取xml格式的字符串和上下文中的xml数据
阅读量:5742 次
发布时间:2019-06-18

本文共 2547 字,大约阅读时间需要 8 分钟。

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 > 0)        {            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的节点,返回SUCCESSstring return_msg = resHandler.getMpParameter("return_msg"); //return_msg是xml的节点,返回OK

 

转载于:https://www.cnblogs.com/hellocjr/p/4340265.html

你可能感兴趣的文章
sql语句返回主键SCOPE_IDENTITY()
查看>>
机器学习开源项目精选TOP30
查看>>
iOS开发-邮件发送
查看>>
/etc/resolv.conf文件详解
查看>>
【转】VC的MFC中重绘函数的使用总结(整理)
查看>>
JQuery日记_5.13 Sizzle选择器(六)选择器的效率
查看>>
oracle查看经常使用的系统信息
查看>>
Django_4_视图
查看>>
Linux的netstat命令使用
查看>>
lvm讲解,磁盘故障小案例
查看>>
大快网站:如何选择正确的hadoop版本
查看>>
经过这5大阶段,你离Java程序员就不远了!
查看>>
IntelliJ IDEA 连接数据库详细过程
查看>>
thymeleaf 学习笔记-基础篇
查看>>
PHP-X开发扩展
查看>>
android学习笔记——onSaveInstanceState的使用
查看>>
工作中如何做好技术积累
查看>>
怎么用sysLinux做U盘双PE+DOS??
查看>>
Spring Transactional
查看>>
shell脚本实例
查看>>