一、Json字符串转换为Dictionary

  1. /// <summary>
  2. /// JSON字符串转为 Dictionary
  3. /// </summary>
  4. /// <typeparam name="TKey"></typeparam>
  5. /// <typeparam name="TValue"></typeparam>
  6. /// <param name="jsonStr"></param>
  7. /// <returns></returns>
  8. public static Dictionary<string, string> DeserializeStringToDictionary<TKey, TValue>(string jsonStr)
  9. {
  10. if (string.IsNullOrEmpty(jsonStr))
  11. return new Dictionary<string, string>();
  12.  
  13. Dictionary<string, string> jsonDict = JsonConvert.DeserializeObject<Dictionary<string, string>>(jsonStr);
  14.  
  15. return jsonDict;
  16.  
  17. }

二、解析json

JObject解析单个Json;

JArray(解析匿名Json数组);

JsonConvert.DeserializeObject(反序列化json)

①添加using Newtonsoft.Json.Linq引用

②相关方法

  • 遍历json对象(解析单个json)
  1. var josn = new { ID = "11", Name = "Test", Sex = "男" };
  2. string strJson = JsonConvert.SerializeObject(josn);
  3. JObject jsonObj = JObject.Parse(strJson);
  4. string strID=jsonObj["ID"].ToString().Trim();
  • 数组类型的json对象
  1. var v1 = new { ID = "11", Name = "T1", Sex = "男" };
  2. var v2 = new { ID = "22", Name = "T2", Sex = "女" };
  3. var josn = new { v1, v2 };
  4. string strJosn = JsonConvert.SerializeObject(josn);
  5. JArray ja = JArray.Parse(strJosn);
  6. for (int i = 0; i < ja.Count; i++)
  7. {
  8. JObject jsonOB = JObject.Parse(ja[i].ToString().Trim());
  9. string strID = jsonOB["ID"].ToString().Trim();
  10. }

C#使用JSON相关的更多相关文章

  1. json相关知识

    整理json相关知识: 1.for in 循环获取json中的键(key)与值(value) <!DOCTYPE html> <html lang="en"> ...

  2. plpgsql 数组、JSON相关

    Function Return Type Description Example Result array_append(anyarray,anyelement) anyarray append an ...

  3. 【接口测试】接口概念及Json相关

    一.接口相关概念 1.什么是接口? 接口:接口就是系统A程序中留的其他系统B访问系统A的接口(实际上是系统某个代码文件下某一个可访问的方法.).其他系统B可以调用这个方法a对系统A中的方法a进行访问从 ...

  4. 与JSON相关的问题

    1.JSON.stringify 与 JSON.parse 相关的问题 JSON.stringify 把字符串转化为字符串,JSON.parse把字符串转化为JSON格式 会出现的问题Unexpect ...

  5. vue.js的package.json相关问题解惑

    使用vue-cli创建vue.webpack项目,在项目中用到了iSlider移动端滑动插件,只在本地命令工具中npm install islider.js:提交之后,partner下载代码后一直运行 ...

  6. json相关类库,java对象与json相互转换

    有效选择七个关于Java的JSON开源类库 转自:http://www.open-open.com/lib/view/open1397870197828.html 翻译: (英语原文:http://w ...

  7. json相关,浏览器打开json格式的api接口时,进行格式化,chrome插件

    在chrome浏览器中安装Google jsonview插件能够自动格式化json格式的数据.

  8. JSON相关知识,转载:删除JSON中数组删除操作

    一:JSON是什么 JSONg格式:对象是一个无序的“名称/值”对的集合. 对象以括号开始,括号结束. 名称冒号分隔值. "名称/值"之间用逗号分隔 例: var people = ...

  9. json相关的一些用法

    一. json可以表示3种类型的值:   简单值 . 对象. 数组    表示对象时:>1. 没有变量的概念 ,所以不用申明变量                    >2. 没有末尾结束 ...

  10. JSON相关基础知识

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

随机推荐

  1. 关于Salesforce存在至于项目的选择List的取值问题

    概要: 我们在做项目的时候,经常会遇到一个问题: 一个选择List字段的可选项被另一个选择List制约,这种情况如何在后台取得这两者的对应关系. 原文在这里(侵删): Apexで連動項目の選択肢を取得 ...

  2. django admin 字段设置

    来源:http://xieboke.net/article/100/ django admin 后台里有些输入框长度.宽度.提示语等,可能不满足我们的需求,这个时候,我们就需要对 admin 的样式进 ...

  3. 百题计划-6 codeforces 651 div2 E. Binary Subsequence Rotation 01序列集合划分,2个队列处理

    https://codeforces.com/contest/1370/problem/E 队列元素以末尾字符为结尾的序列就好了,这里队列里的元素不重要,队列size重要 #include<bi ...

  4. kaola

    考拉布局 CSS <style> * { margin: 0; padding: 0; } body { background-color: #f5f5f5; } .clearfix:af ...

  5. 04jsp(2)

    <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding= ...

  6. 设置eclipse默认编码为UTF-8 Set default encoding to utf-8 in eclipse

    设置eclipse默认编码为UTF-8 Set default encoding to utf-8 in eclipse 1,windows->Perferences->General-& ...

  7. Qt中的串口编程

    串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口.串行接口(Serial Interface) 是指数据一位一位地顺序传送,其特点是通信线路简单,只要 ...

  8. PL/SQL Initialization error Could not initialize 问题

    问题: PL/SQL Initialization error Could not initialize 问题 参考链接: https://blog.csdn.net/luoyanjiewade/ar ...

  9. 01.BeanFactory实现

    /** beanFactory 不会做的事:* 1.不会主动调用BeanFactory 后处理器* 2.不会主动添加Bean后处理器* 3.不会主动初始化单例(懒加载)* 4.不会解析beanFact ...

  10. Android studio学习笔记2

    Android studio学习笔记2 20201303张奕博 2023.1.14 android studio动态调试apk 1.配置环境 android studio需要安装插件:1,Smalid ...