在.NET解析json有很多方法,这里介绍最简单也用的最多的一种。

一、添加引用

解析Json,先下载开源控件 Newtonsoft.Json.dll

下载地址:http://files.cnblogs.com/gosky/Newtonsoft.Json%E9%9B%86%E5%90%88.zip

解压以后,在bin/Net20/中找到Newtonsoft.Json.dll复制到项目的bin目录下

二、引用命名空间

using Newtonsoft.Json.Linq;
using Newtonsoft.Json;

三、使用方法

Json格式如下:jsonStr:{"errcode":40013,"errmsg":"invalid appid"}

//创建JObject对象
JObject jo = (JObject)JsonConvert.DeserializeObject(jsonStr);
string errcode = jo["errcode"].ToString();
string errmsg = jo["errmsg"].ToString();

四、解析xml

在.NET2.0中解析XML需要使用的命名空间是:System.Xml;

1.引用

using System.Xml;

2.解析

要解析的xml如下:这里引用了微信接口中的文本消息报文格式。

<xml>
<ToUserName><![CDATA[gh_4c30545b3c2d]]></ToUserName>
<FromUserName><![CDATA[o5cnujvIjKiGo4hgWiRCYtR73owM]]></FromUserName>
<CreateTime>99999999</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[长江尚品]]></Content>
<MsgId>1234567890123456</MsgId>
</xml>

解析语法:

XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
//获取xml根节点
XmlNode root = doc.FirstChild;
string ToUserName =  root.SelectSingleNode("ToUserName").InnerText;
string FromUserName = root..SelectSingleNode("FromUserName").InnerText;
·········
//解析方法同上

也可以这样解析:

//解析数据
XmlDocument doc = new System.Xml.XmlDocument();
doc.LoadXml(requestXml);
XmlNode node = doc.SelectSingleNode("/xml/ToUserName"); if (node != null){   XmlCDataSection section = node.FirstChild as XmlCDataSection;
  if(section!=null){
    string ToUserName = section.Value;
  }
}

两种方法都可以。

在.NET2.0中解析Json和Xml的更多相关文章

  1. 【ASP.NET Web API教程】6.2 ASP.NET Web API中的JSON和XML序列化

    谨以此文感谢关注此系列文章的园友!前段时间本以为此系列文章已没多少人关注,而不打算继续下去了.因为文章贴出来之后,看的人似乎不多,也很少有人对这些文章发表评论,而且几乎无人给予“推荐”.但前几天有人询 ...

  2. ASP.NET Web API中的JSON和XML序列化

    ASP.NET Web API中的JSON和XML序列化 前言 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http://www.cnblogs.com/aehyok ...

  3. Asp.Net Web API 2第十三课——ASP.NET Web API中的JSON和XML序列化

    前言 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http://www.cnblogs.com/aehyok/p/3446289.html 本文描述ASP.NET W ...

  4. 【IHttpHandler】在ASP.Net2.0中使用UrlRewritingNet实现链接重写

    很多时候我们需要链接转向(Url Rewriting),例如二级域名转向.文章访问链接等场合. 让我们看两个例子: 1 你现在看到的当前作者的博客园的域名: http://jx270.cnblogs. ...

  5. C#解析json和xml数据

    C#解析json和xml数据 // 用到的包using Newtonsoft.Json; // using Newtonsoft.Json.Linq; const string value = &qu ...

  6. JavaScript中解析JSON --- json.js 、 json2.js 以及 json3.js的使用区别

    JSON官方(http://www.json.org/)提供了一个json.js,json.js是JSON官方提供的在JavaScript中解析JSON的js包,json.js.json2.js.js ...

  7. Ajax--PHP+JQuery+Ajax解析json、XML数据、加载页面

    一.JQuery+Ajax用get.post方式提交和请求数据 知识要点: $('#userName').blur(function () { var txt = $(this).val(); $.a ...

  8. 面试官问我:如何在 Python 中解析和修改 XML

    摘要:我们经常需要解析用不同语言编写的数据.Python提供了许多库来解析或拆分用其他语言编写的数据.在此 Python XML 解析器教程中,您将学习如何使用 Python 解析 XML. 本文分享 ...

  9. hive中解析json数组

    -- hive中解析json数组 select t1.status ,substr(ss.col,,) as col ,t3.evcId ,t3.evcLicense ,t3.evcAddress , ...

随机推荐

  1. JAVA 聊天窗口

    //聊天窗口 import java.awt.*; import javax.swing.*; public class Jiemian9 extends JFrame{ JTextArea wby; ...

  2. 编写第一个java程序

    安装了一个编辑器,Notepad++,这个编辑器以前在写PHP的时候就喜欢用,呵呵,现在写java也先沿用这个这个编辑器吧. 代码: public class Test{ public static ...

  3. ICE安装

    第一步,基于Windows下的安装,所以下载windows版的Ice: http://www.zeroc.com/download       第二步,安装Ice: 常规安装即可,可以选择安装目录,本 ...

  4. 01- 使用brew 安装ant -学习笔记(一)

    1.卸载Mac OS下brew工具:ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/mast ...

  5. php 循环向<select>添加选项

    在控制器内:$this->assign('data',$data);

  6. Servlet中的配置 web.xml

    url-pattern配置 可以为同一个Servlet配置多个url-pattern: <servlet> <servlet-name>DoGetPostDemo</se ...

  7. delphi的tserversocket控件如何接收16进制数

    http://bbs.csdn.net/topics/390473005 对方客户端发送数据如:68 00 00··········:接收完成后,数据长度没错(13),但是显示接收结果时,只显示一个字 ...

  8. 用Java开发gRPC服务的例子分析

    本文的代码例子来自:https://github.com/grpc/grpc-java  定义服务 这一步与其他语言完全一样,需要定义gRPC的服务.方法.request和response的类型. 完 ...

  9. jquery.cookie.js 配置

    一定要写入cookies路径 一个轻量级的cookie 插件,可以读取.写入.删除 cookie. jquery.cookie.js 的配置 首先包含jQuery的库文件,在后面包含 jquery.c ...

  10. Codeforces 611d [DP][字符串]

    /* 题意:给一个长度不超过5000的字符串,每个字符都是0到9的数字. 要求将整个字符串划分成严格递增的几个数字,并且不允许前导零. 思路: 1.很开心得发现,当我在前i个区间以后再加一个区间的时候 ...