C#通过JObject解析json对象

一、简单json对象

Json数据:

{
"shp_flg": "0",
"fm_date": "2018-04-18T00:00:00Z",
"to_date": "2018-04-18T00:00:00Z",
"emp_no": "008",
"emp_nme_en": "Visitor 6",
"shift": "事假",
"work_time": 35,
"remark": "xyz"
}

处理方式:

JObject jo = JObject.Parse(paramsStr);    //paramsStr - json字符串名字
//下面是各种不同写法,但是结果一样
string shp_flg = jo["shp_flg"].ToString();
string fm_date = jo["fm_date"].ToString("yyyy-MM-dd");
string to_date = jo.Value<DateTime>("to_date").ToString("yyyy-MM-dd");
string emp_no = jo["emp_no"].ToString();
string shift = jo.Value<string>("shift");
int work_time = jo.Value<int>("work_time");
string remark = jo.Value<string>("remark");

二、嵌套json对象

json 格式的字符串解析 格式化:

{
   "input": {
       "size": 193156,
       "type": "image/png"
   },
   "output": {
       "size": 59646,
       "type": "image/png",
       "width": 487,
       "height": 284,
       "ratio": 0.3088,
       "url": "https://api.xxxxxx.com/output/hrqtghqtv0ab4qgv.png"
    }
}

json解析  嵌套格式

Newtonsoft.Json.Linq.JObject jobject = (Newtonsoft.Json.Linq.JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(jsonText);

decimal input_size = Convert.ToDecimal(jobject["input"]["size"]);//193156, 输入图片大小
string input_type = jobject["input"]["type"].ToString();// "image/png",输入图片类型
decimal output_size = Convert.ToDecimal(jobject["output"]["size"]);// 59646, 图片大小
string output_type = jobject["output"]["type"].ToString();//"image/png", 图片类型
string output_width = jobject["output"]["width"].ToString();//487, 宽度
string output_height = jobject["output"]["height"].ToString();//284, 高度
string output_ratio = jobject["output"]["ratio"].ToString();//0.3088, 压缩率=Convert.ToString((1-0.3088)*100)+"%";
string output_url = jobject["output"]["url"].ToString();//"https://api.xxxxxx.com/output/hrqtghqtv0ab4qgv.png"

WebEnh.Core.Net.HttpProc.WebClient wc = new WebEnh.Core.Net.HttpProc.WebClient();
wc.DownloadFile(output_url, download_filename);

到此这篇关于C#通过JObject解析json对象的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • C#使用dynamic类型访问JObject对象

    dynamic是C#里面的动态类型,可在未知类型的情况访问对应的属性,非常灵活和方便. 使用Json.Net可以把一个Json字符串转换成一个JObject对象,如果有已知强类型,如果有已知对应的强类型,可以直接转成对应的类型.但如果没有,要访问Json里面对应的数据的时候,就显得比较麻烦.我们可以借助DynamicObject来访问对应的属性. DynamicObject 我们要创建一个动态类,用于访问JObject,代码如下: public class JObjectAccessor : D

  • C#使用JArray和JObject封装JSON对象

    1.JObject:基本的json对象 /// <summary> /// Gets the j object. /// </summary> /// <returns></returns> public JObject GetJObject() { var obj = new JObject {{"Name", "Mark" } }; return obj; } 2.JObject:嵌套子对象(JObject嵌JOb

  • C#通过JObject解析json对象

    一.简单json对象 Json数据: { "shp_flg": "0", "fm_date": "2018-04-18T00:00:00Z", "to_date": "2018-04-18T00:00:00Z", "emp_no": "008", "emp_nme_en": "Visitor 6", &quo

  • jquery遍历筛选数组的几种方法和遍历解析json对象

    jquery grep()筛选遍历数组 复制代码 代码如下: $().ready( function(){ var array = [1,2,3,4,5,6,7,8,9]; var filterarray = $.grep(array,function(value){ return value > 5;//筛选出大于5的 }); for(var i=0;i<filterarray.length;i++){ alert(filterarray[i]); } for (key in filtera

  • Jquery ajax不能解析json对象,报Invalid JSON错误的原因和解决方法

    下面说一下,最近在使用jquery 1.4中使用$.ajax()方法解析json对象遇到的问题. Json对象是: 复制代码 代码如下: [{name:'二手房出售',infoCount:0,pageUrl:'/ershoufang'},{name:'二手房求购',infoCount:0,pageUrl:'/qiugou'},{name:'二手房装修',infoCount:0,pageUrl:'/esfzhuangxiu'},{name:'二手回收',infoCount:0,pageUrl:'/

  • Jquery遍历筛选数组的几种方法和遍历解析json对象,Map()方法详解以及数组中查询某值是否存在

    1.jquery grep()筛选遍历数组(可以得到反转的数组) // 1.jquery grep()筛选遍历数组(可以得到反转的数组) var array = [1,5,9,3,12,4,48,98,4,75,2,10,11]; var filterArray = $.grep(array,(currentValue) => { return currentValue > 10; }); console.log(`${filterArray}---${filterArray.length}`

  • Python解析JSON对象的全过程记录

    前言 本章节我们将为大家介绍如何使用 Python 语言来编码和解码 JSON 对象. json处理模块的主要任务,是将一个JSON对象,转换成Python数据类型数据进行处理,或者反之,将Python数据类型数据,转换成JSON对象(字符串流),在不同的模块或者系统间传输. 1. JSON数据格式特点 对象表示为键值对 数据由逗号分隔 花括号保存对象 方括号保存数组 { "students": [ { "name":"北山啦" , "

  • 解析JSON对象与字符串之间的相互转换

    在开发的过程中,如果对于少量参数的前后台传递,可以直接采用ajax的data函数,按json格式传递,后台Request即可,但有的时候,需要传递多个参数,这样后台 接受的时候Request多个很麻烦,此时要按照类的格式或者 集合的形式进行传递. 例如:前台按类的格式传递JSON对象: var jsonUserInfo = "{\"TUserName\":\"" + userName + "\",\"TInterest\&qu

  • Android 解析JSON对象及实例说明

    JSON是一种轻量级的对象,数据体积小,方便传输,易于解析! 首先新建一个类工具类JsonUtil,用于获取请求返回的数据 复制代码 代码如下: public class JsonUtil { private static final String TAG = "JSONUTIL"; public static JSONObject getJSON(String url) throws Exception {  return new JSONObject(getRequest(url)

  • jQuery怎么解析Json字符串(Json格式/Json对象)

    json数据是我们常用的一种小型的数据实时交换的一个东西,他可以利用jquery或js进行解析,下面我来介绍jquery解析json字符串方法. 我们先以解析上例中的comments对象的JSON数据为例,然后再小结jQuery中解析JSON数据的方法. 上例中得到的JSON数据如下,是一个嵌套JSON: { "comments": [ { "content": "很不错嘛", "id": 1, "nickname&

  • jquery解析json格式数据的方法(对象、字符串)

    本文实例讲述了jquery解析json格式数据的方法.分享给大家供大家参考,具体如下: json数据是我们常用的一种小型的数据实时交换的一个东西,他可以利用jquery或js进行解析,下面我来介绍jquery解析json字符串方法. 一.jQuery解析Json数据格式: 使用这种方法,你必须在Ajax请求中设置参数: dataType: "json" 获取通过回调函数返回的数据并解析得到我们想要的值,看源码: jQuery.ajax({ url: full_url, dataType

随机推荐