public class resuleobj
{
public int returncode { get; set; }
public string message { get; set; }
public string result { get; set; }
}

class carname
{
public string id { get; set; }
public string name { get; set; }
public string firstletter { get; set; }
public string seriesstate { get; set; }
public string seriesorder { get; set; }
}

//{"returncode":0,"message":"成功","result":{"branditems":[
class cartype
{
public string id { get; set; }
public string name { get; set; }

public string bfirstletter { get; set; }
public string logo { get; set; }
public string country { get; set; }
public string countryid { get; set; }

}
//id\": 155,\r\n \"name\": \"广汽丰田\",\r\n \"firstletter\": \"G\",\r\n \"seriesitems
class cartype1
{
public string id { get; set; }
public string name { get; set; }

public string firstletter { get; set; }
public object seriesitems { get; set; }

}

private void button35_Click(object sender, EventArgs e)
{
string url = "http://www.autohome.com.cn/ashx/AjaxIndexCarFind.ashx?type=1";
string urla = "http://www.autohome.com.cn//ashx/AjaxIndexCarFind.ashx?type=3&value=";

HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
//req.Method = "GET";
//req.ContentType = "application/json:charset=UTF-8";

HttpWebResponse resp = (HttpWebResponse)req.GetResponse();

Stream str = new System.IO.Compression.GZipStream(resp.GetResponseStream(), System.IO.Compression.CompressionMode.Decompress);

StreamReader reader = new StreamReader(str, Encoding.Default);

string jsonStr = reader.ReadToEnd();
JObject jo = (JObject)JsonConvert.DeserializeObject(jsonStr);

//string jstr = obj.result;//["branditems"].tostring();

var ajo = jo["result"]["branditems"].ToString();

// var obj1 = JsonConvert.DeserializeObject<ppdata>(jstr);

// List<cartype> ls = new list<cartype>(ajo.ToString());
List<cartype> rb = JsonConvert.DeserializeObject<List<cartype>>(ajo.ToString());

// var ja = JsonConvert.DeserializeObject<cartype>(objm.branditems);
foreach (cartype a in rb)
{
var aname = a.name;
var id = a.id;

Log.Info(" union all select '" + aname + "'", "a");
// if (id == "3")
//{
req = (HttpWebRequest)WebRequest.Create(urla+id);
//req.Method = "GET";
//req.ContentType = "application/json:charset=UTF-8";

resp = (HttpWebResponse)req.GetResponse();

//Stream str0 = resp.GetResponseStream();
str = new System.IO.Compression.GZipStream(resp.GetResponseStream(), System.IO.Compression.CompressionMode.Decompress);

reader = new StreamReader(str, Encoding.Default);

jsonStr = reader.ReadToEnd();

//string bname = jo1["result"]["factoryitems"]["name"].ToString();

JObject jo1 = JObject.Parse(jsonStr);
var jsonString = jo1["result"]["factoryitems"].ToString();

// var rcar = JsonConvert.DeserializeObject<List<cartype1>>(jsonString);
// var ja = JArray.Parse(jsonString);
List<cartype1> rcar = JsonConvert.DeserializeObject<List<cartype1>>(jsonString);
string bname = "";
string cname = "";

foreach (var ca in rcar)
{
bname = ca.name;
// MessageBox.Show(bname);

List<carname> carinfo = JsonConvert.DeserializeObject<List<carname>>(ca.seriesitems.ToString());
foreach (var cc in carinfo)
{
cname = cc.name;
// MessageBox.Show(cname);+ bname + ","
Log.Info(" union all select '"+aname + "','" + cname+"'","b");
}

};

}

MessageBox.Show("ok");
}

}

json 解析,JSON数组的更多相关文章

  1. json解析json字符串时候,数组必须对应jsonObjectArray,不能对应JsonObject。否则会解析错误。

    json第三方解析json字符串时候,json数组必须对应jsonObjectArray,不能对应JsonObject.->只要是[]开头的都是json数组字符串,就要用jsonArray解析 ...

  2. c# 使用Newtonsoft.Json解析JSON数组

    一.获取JSon中某个项的值 要解析格式: [{"VBELN":"10","POSNR":"10","RET_ ...

  3. Json转model对象,model转json,解析json字符串

    GitHub链接: https://github.com/mozhenhau/D3Json D3Json 通过swift的反射特性,把json数据转换为model对象,本类最主要是解决了其他一般jso ...

  4. 认识Json解析json生成json

    .markdown-body hr::after,.markdown-body::after { clear: both } .loopLine,.messageLine0 { } .markdown ...

  5. C# Json解析Json = "{\"EX_RETURN\":[{\"MATNR\":\"test\"}] }";

    string jtext = "{\"jiangsu\":[{\"wuxi\":\"无锡\"},{\"suzhou\&q ...

  6. Newtonsoft.Json解析json字符串和写json字符串

    写: StringWriter sw = new StringWriter(); JsonWriter writer = new JsonWriter(sw); //如果报错则使用JsonWriter ...

  7. C# Newtonsoft.Json解析json字符串处理 - JToken 用法

    //*调用服务器API(获取可以处理的文件) //1.使用JSON通信协议(调用[待化验任务API]) String retData = null; { JToken json = JToken.Pa ...

  8. Newtonsoft.Json解析Json字符串案例:

    /// <summary> /// 上行jsom格式日志记录 /// </summary> /// <param name="responseJson" ...

  9. C# Newtonsoft.Json解析json字符串处理(最清晰易懂的方法)

    需求: 假设有如下json字符串: { ", "employees": [ { "firstName": "Bill", &quo ...

  10. Json 解析Json

    1.把LitJson导入到项目里面; 2.建一个下面的脚本,不挂在游戏对象上; 3.新建下面一个脚本,挂在相机上. using System.Collections; using System.Col ...

随机推荐

  1. 一文详解SpEL表达式注入漏洞

    摘要:本文介绍了SpEL表达式以及常见的SpEL注入攻击,详细地介绍了部分漏洞攻击实例以及常用的漏洞检测与防御手段. 本文分享自华为云社区<SpEL表达式注入漏洞分析.检查与防御>,作者: ...

  2. JZOJ 5348. 【NOIP2017提高A组模拟9.5】心灵治愈

    题目大意 求 \(b\) (正整数集合)使得 \(\sum_{i=1}^{n+1} a_i \times b_i = 1\) 其中给定 \(b_{n+1}=m\) 且为 \(b\) 中最大值 \(1 ...

  3. php使用PDO获取结果集的方法

    php使用PDO获取结果集的方法  转载:https://www.jb51.net/article/105797.htm 更新时间:2017年02月16日 11:11:42   作者:水晶依恋     ...

  4. 对服务器进行心跳检测 python django

    (由于春节期间连不上服务器,但又不知道是不是服务器关机了,因此写一个心跳检测功能遇到问题时可以排查部分原因) 具体来说分为客户端和服务端,客户端为校园服务器,服务端为我们自己搭建的http服务器.客户 ...

  5. Office2021简体中文离线安装包下载地址合集,目前最全

    Office2021中文版的离线安装包下载地址合集: 一.专业增强版(强烈推荐):http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c ...

  6. 2.6 EmpController

    package com.hy.controller; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.H ...

  7. Stanford NLP 在Python环境中安装、介绍及使用

    Stanford NLP Stanford NLP提供了一系列自然语言分析工具.它能够给出基本的词形,词性,不管是公司名还是人名等,格式化的日期,时间,量词,并且能够标记句子的结构,语法形式和字词依赖 ...

  8. 腾讯QQ v9.7.3.28946 绿色优化版

    修改历史: 2023.02.13:自改官方 9.7.3.28946 最新正式版本2023.01.15:自改官方 9.7.1.28940 最新正式版本2023.01.07:自改官方 9.7.1.2893 ...

  9. unity 实现Game窗口的Stats 【转自蛮牛】

    using UnityEngine;using System.Text;using UnityEditor; public class ShowFps : MonoBehaviour{ public ...

  10. CH582m模拟JoyStick使用USB与电脑通信

    目录 本程序改编自沁恒官网2022年1月更新的CH583EVT中的CompoundDev例程.这里只贴了main.c中的程序.能够实现:①直接接电脑,在设备管理器中能够查到被电脑识别为HID-comp ...