• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > 用Newtonsoft将json串转为对象的方法(详解)

用Newtonsoft将json串转为对象的方法(详解)

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了newtonsoft.json,newtonsoft.json.dll,newtonsoft.json用法,c newtonsoft.json,newtonsoft.json下载等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

首先,将json串转为一个JObject对象:

JObject jo = (JObject)JsonConvert.DeserializeObject(CurrentSelectedItemReq);

</div>

这个JObject是一个“值对”类型,比如说我们的json串是这样:

{
 "rows":[
  [
   {"NumIid":"001"},
   {"PicUrl":"xxx.png"},
   {"Title":"xxxxx"},
   {"Price":"xxx"},
   {"OuterId":"xxxx"} 
  ],
  [
   {"NumIid":"002"},
   {"PicUrl":"xxx.png"},
   {"Title":"xxxxx"},
   {"Price":"xxx"},
   {"OuterId":"xxxx"} 
  ],
  [
   {"NumIid":"003"},
   {"PicUrl":"xxx.png"},
   {"Title":"xxxxx"},
   {"Price":"xxx"},
   {"OuterId":"xxxx"} 
  ]
  ]
}

</div>

那么可以jo["rows"]就是一个数组,如果这个反之如果不是数组可能是一个对象,那么我们根据他实际是一个什么值来进行强制转换。

以上面这个json串为例,我们这样取到这个数组:

JArray arr = (JArray)jo["rows"];

我们发现这个数组里面还是一个数组,而里层数组里面才是一个object,那么我们可以这样取:

for (int i = 0; i < arr.Count; i++) 
    {
      JArray arr2 = (JArray)arr[i];
      for (int j = 0; j < arr2.Count; j++) 
      {
        JObject obj = (JObject)arr2[j];

        Response.Write(obj["NumIid"]);
        Response.End();
      }
        
    }

</div>

如果实际是一个数组,我们就用JArray强制转换,如果实际是一个值对,我们就用JObject强制转换。

最后一层应该是一个值对类型的object,怎么把这些值全部取出来?

最后应该是形如:

{"NumIid":"003"}

取值很简单,直接:

string str=obj["NumIid"];

问题是有时候这个obj是这样的:

{"PicUrl":"xxx.png"}

而且你不知道他什么时候是什么。

这时应该这样取:

foreach (KeyValuePair<string, JToken> kp in obj) 
        {
          Response.Write(kp.Key);
          Response.Write("=");
          Response.Write(kp.Value);
          Response.End();
        }

</div>

以上这篇用Newtonsoft将json串转为对象的方法(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 用Newtonsoft将json串转为对象的方法(详解)
  • newtonsoft.json解析天气数据出错解决方法

相关文章

  • 2017-05-28C#下载歌词文件的同步和异步方法
  • 2017-05-28c#中executereader执行查询示例分享
  • 2017-05-28C#实现将Email地址转成图片显示的方法
  • 2017-05-28C#页面之间跳转功能的小结
  • 2017-05-28C#基于正则去掉注释的方法示例
  • 2017-05-28WPF TextBox和PasswordBox添加水印
  • 2017-05-28C#怎么实现手机短信发送功能
  • 2017-05-28c#中的常用ToString()方法总结
  • 2017-05-28C#从foreach语句中枚举元素看数组详解
  • 2017-05-28C#操作本地文件及保存文件到数据库的基本方法总结

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 浅析c#范型中的特殊关键字where & default
    • C#中时间的几种格式转换方法
    • C#中文随机数实现方法
    • C# 排序算法之堆排序
    • C#中DataTable 转实体实例详解
    • C#实现windows form限制文本框输入的方法
    • winform实现创建最前端窗体的方法
    • C#处理MySql多个返回集的方法
    • C#中GraphicsPath的Widen方法用法实例
    • C#使用itextsharp生成PDF文件的实现代码

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有