C#jsonイメージをJObjectで読み込む
一、単純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"
}var jObj = JObject.Parse(paramsStr);//paramsStr-json文字列var shp_flg = jObj.Value("shp_flg");var fm_date = jObj.Value("fm_date").ToString("yyyy-MM-dd");var to_date = jObj.Value("to_date").ToString("yyyy-MM-dd");var emp_no = jObj.Value("emp_no");var shift = jObj.Value("shift");var work_time = jObj.Value("work_time");var remark = jObj.Value("remark");
二、ネストjsonオブジェクト転自:Newtonsoft.JsonはJObjectで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"
}var jObj = JObject.Parse(paramsStr);//paramsStr-json文字列var shp_flg = jObj.Value("shp_flg");var fm_date = jObj.Value("fm_date").ToString("yyyy-MM-dd");var to_date = jObj.Value("to_date").ToString("yyyy-MM-dd");var emp_no = jObj.Value("emp_no");var shift = jObj.Value("shift");var work_time = jObj.Value("work_time");var remark = jObj.Value("remark");
二、ネストjsonオブジェクト転自:Newtonsoft.JsonはJObjectでjson対像を読み取るのが超簡単
/* json
{
"input": {
"size": 193156,
"type": "image/png"
},
"output": {
"size": 59646,
"type": "image/png",
"width": 487,
"height": 284,
"ratio": 0.3088,
"url": "https://api.tinify.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.tinify.com/output/hrqtghqtv0ab4qgv.png"
WebEnh.Core.Net.HttpProc.WebClient wc = new WebEnh.Core.Net.HttpProc.WebClient();
wc.DownloadFile(output_url, download_filename);