使用方法:

引用Newtonsoft.Json.dll文件,然后引用命名空间using Newtonsoft.Json.Linq;
JsonDome中有实例,照做就行

现在贴上示例代码

 using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace JD
{
public class JsonDome
{
public static Dictionary<string, string> GetJsonstr(string jsonStr)
{
jsonStr = "{\"category_attribute_search_response\":{\"code\":\"0\",\"total\":35,\"attributes\":[{\"aid\":10093066,\"name\":\"品相\",\"cid\":\"3837\"},{\"aid\":83470,\"name\":\"阶段\",\"cid\":\"3837\"},{\"aid\":10044550,\"name\":\"编纂\",\"cid\":\"3837\"},{\"aid\":10044551,\"name\":\"摄影\",\"cid\":\"3837\"},{\"aid\":10044548,\"name\":\"口述\",\"cid\":\"3837\"},{\"aid\":10044549,\"name\":\"朗读\",\"cid\":\"3837\"},{\"aid\":10044546,\"name\":\"校对\",\"cid\":\"3837\"},{\"aid\":10044547,\"name\":\"注释\",\"cid\":\"3837\"},{\"aid\":10044544,\"name\":\"译者\",\"cid\":\"3837\"},{\"aid\":10044545,\"name\":\"绘者\",\"cid\":\"3837\"},{\"aid\":10044558,\"name\":\"读者对象\",\"cid\":\"3837\"},{\"aid\":10044559,\"name\":\"附件数量\",\"cid\":\"3837\"},{\"aid\":10044556,\"name\":\"中图法分类号\",\"cid\":\"3837\"},{\"aid\":10044557,\"name\":\"主题词\",\"cid\":\"3837\"},{\"aid\":10044554,\"name\":\"品牌\",\"cid\":\"3837\"},{\"aid\":10044555,\"name\":\"附件\",\"cid\":\"3837\"},{\"aid\":10044552,\"name\":\"书写\",\"cid\":\"3837\"},{\"aid\":10044553,\"name\":\"整理\",\"cid\":\"3837\"},{\"aid\":10044536,\"name\":\"字数\",\"cid\":\"3837\"},{\"aid\":10044537,\"name\":\"印次\",\"cid\":\"3837\"},{\"aid\":10044538,\"name\":\"印刷时间\",\"cid\":\"3837\"},{\"aid\":10044539,\"name\":\"用纸\",\"cid\":\"3837\"},{\"aid\":10044540,\"name\":\"丛书名\",\"cid\":\"3837\"},{\"aid\":10044541,\"name\":\"外文名\",\"cid\":\"3837\"},{\"aid\":10044542,\"name\":\"著者\",\"cid\":\"3837\"},{\"aid\":10044543,\"name\":\"编者\",\"cid\":\"3837\"},{\"aid\":10044528,\"name\":\"版次\",\"cid\":\"3837\"},{\"aid\":10044529,\"name\":\"包装 \",\"cid\":\"3837\"},{\"aid\":10044530,\"name\":\"出版社\",\"cid\":\"3837\"},{\"aid\":10044531,\"name\":\"出版时间\",\"cid\":\"3837\"},{\"aid\":10044532,\"name\":\"正文语言\",\"cid\":\"3837\"},{\"aid\":10044533,\"name\":\"开本\",\"cid\":\"3837\"},{\"aid\":10044534,\"name\":\"套装数量\",\"cid\":\"3837\"},{\"aid\":10044535,\"name\":\"页数\",\"cid\":\"3837\"},{\"aid\":10044527,\"name\":\"ISBN\",\"cid\":\"3837\"}]}}";
//先获得名为category_attribute_search_response的值,再从中获得名为attribute的值就得到中括号中的键值对
var list = JObject.Parse(jsonStr)["category_attribute_search_response"]["attributes"];
Dictionary<string, string> listJson = new Dictionary<string, string>();
for (int i = ; i < list.Count(); i++)
{
if (list[i]["name"].ToString() == "ISBN")
{
listJson.Add("ISBN", list[i]["aid"].ToString());
}
if (list[i]["name"].ToString() == "版次")
{
listJson.Add("版次", list[i]["aid"].ToString());
}
if (list[i]["name"].ToString() == "出版社")
{
listJson.Add("出版社", list[i]["aid"].ToString());
}
}
return listJson;
} } }

附上链接地址:http://files.cnblogs.com/valiant1882331/Newtonsoft.Json.rar

c#简单的Json解析类的更多相关文章

  1. 自己动手实现一个简单的JSON解析器

    1. 背景 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.相对于另一种数据交换格式 XML,JSON 有着诸多优点.比如易读性更好,占用空间更少等.在 ...

  2. Json解析类

      Json解析类 定义两个辅助类 public class JSONObject : Dictionary<string, object> { } public class JSONAr ...

  3. 一个简单的json解析器

    实现一个简单地json解析器. 两部分组成,词法分析.语法分析 词法分析 package com.mahuan.json; import java.util.LinkedList; import ja ...

  4. 用c#自己实现一个简单的JSON解析器

    一.JSON格式介绍 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.相对于另一种数据交换格式 XML,JSON 有着很多优点.例如易读性更好,占用空间更 ...

  5. 高手教您编写简单的JSON解析器

    编写JSON解析器是熟悉解析技术的最简单方法之一.格式非常简单.它是递归定义的,所以与解析Brainfuck相比,你会遇到轻微的挑战 ; 你可能已经使用JSON.除了最后一点之外,解析 Scheme的 ...

  6. IOS自带json解析类解析json

    - (IBAction)test:(id)sender { NSString *result = @"{\"code\":\"S00000\",\&q ...

  7. android json解析及简单例子

    JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据 ...

  8. android json 解析 简单示例

    1 下面是一个简单的json 解析的demo,废话不多说,直接上代码 package com.sky.gallery; import java.io.ByteArrayOutputStream; im ...

  9. 【转】android json解析及简单例子

    JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据 ...

随机推荐

  1. MyCat集群部署(HAProxy + MyCat)

    本文档内容的依赖龙果学院<基于Dubbo的分布式系统架构实战>课程 二.软件版本 操作系统:CentOS-6.6-x86_64 JDK版本:jdk1.7.0_72 HAProxy版本:ha ...

  2. 多目标遗传算法 ------ NSGA-II (部分源码解析) 临时种群生成新父代种群 fillnds.c

    /* Nond-domination based selection routines */ # include <stdio.h> # include <stdlib.h> ...

  3. -bash: ls: command not found

    在iMac下ls既然command not found,查找了下 原因:在设置环境变量时,编辑profile文件没有写正确,导致在命令行下 ls等命令不能够识别.解决方案: 直接在控制台下  expo ...

  4. “cvSnakeImage”: 找不到标识符

    1>g:\project\opencv\helloopencv\helloopencv\helloopencv.cpp(74) : error C2065: "CV_VALUE&quo ...

  5. Android框架浅析之锁屏(Keyguard)机制原理

    最近终于成功的摆脱了FM收音机,迈向了新的模块:锁屏.状态栏.Launcher---姑且称之为“IDLE”小组,或许叫手机 美容小组,要是能施展下周星星同学的还我漂漂拳,岂不快哉. OK,闲话打住,咱 ...

  6. TIMESTAMP 与 explicit_defaults_for_timestamp

    在MySQL 5.6.6之前,TIMESTAMP的默认行为: TIMESTAMP列如果没有明确声明NULL属性,默认为NOT NULL.(而其他数据类型,如果没有显示声明为NOT NULL,则允许NU ...

  7. 移动平台作业——天气预报——天气数据的获得——为应用申请百度ak码

    需求: 可切换城市 可实时更新(按钮或手势或下拉刷新) 可现实未来三日的天气 不限制横屏或者竖屏,不限制布局样式,但要求得到的数据均需显示(北京.天气数据.天气图标) 提示: 获得实时天气数据(任选一 ...

  8. WPF 自定义路由事件 与 附加路由事件

    为student添加附件事件

  9. Hibernate的fetch (转)

    fetch ,可以设置fetch = "select" 和 fetch = "join" 用一对多来举例: fetch = "select" ...

  10. Verilog HDL常用的行为仿真描述语句

    一.循环语句 1.forever语句 forever语句必须写在initial模块中,主要用于产生周期性波形. 2.利用for.while循环语句完成遍历 for.while语句常用于完成遍历测试.当 ...