首页 > 其他分享 >各种类型json解析

各种类型json解析

时间:2024-03-03 11:56:28浏览次数:13  
标签:status set string 各种类型 json 解析 public name

using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Script.Serialization;

namespace AnalysisJson
{
class Program
{
static void Main(string[] args)
{
//第一种形式:status中是{}形式,对象
string json = @"{'name':'Tom','province':'32','city':'1','location':'江苏 南京','status':{'created_at':'Thu Feb 26 21:04:34 +0800 2015','text':'哈哈'}}";
JavaScriptSerializer jsSerializer = new JavaScriptSerializer();
JsonData jd = jsSerializer.Deserialize<JsonData>(json);
Console.WriteLine(string.Format("name={0};province={1};city={2};location={3};status={4};",
jd.name, jd.province, jd.city, jd.location, jd.status.created_at + jd.status.text));
//键值对集合(Dictionary):
json = @"{'name':'Tom','province':'32','city':'1','location':'江苏 南京'}";
var a = jsSerializer.Deserialize<Dictionary<string, string>>(json);
//数组
json = @"['1','2','3']";
var b = jsSerializer.Deserialize<List<string>>(json);

//第二种形式:status中是[] 形式,数组
json = @"{'name':'Tom','province':'32','city':'1','location':'江苏 南京','status':[{'created_at':'Thu Feb 26 21:04:34 +0800 2015','text':'哈哈'},{'created_at':'Thu Feb 26 21:04:34 +0800 2015','text':'哈哈'}]}";
jsSerializer = new JavaScriptSerializer();
JsonData2 jd2 = jsSerializer.Deserialize<JsonData2>(json);
Console.WriteLine(string.Format("name={0};province={1};city={2};location={3};status={4};"
, jd2.name, jd2.province, jd2.city, jd2.location, jd2.status[0].created_at + jd2.status[0].text));
}

public struct Status
{
public string created_at { get; set; }
public string text { get; set; }
}

public struct JsonData
{
public string name { get; set; }
public string province { get; set; }
public string city { get; set; }
public string location { get; set; }
public Status status;
}

public struct JsonData2
{
public string name { get; set; }
public string province { get; set; }
public string city { get; set; }
public string location { get; set; }
public List<Status> status;
}

public class DepatData
{
public int depart_id = 0;
public string depart_name = "";
public string depart_source = "";
public StaffData staff = new StaffData();

public class StaffData
{
public string name = "";
public string title = "";
public string image = "";
public string id = "";
}
}
}
}

标签:status,set,string,各种类型,json,解析,public,name
From: https://www.cnblogs.com/wangtiantian/p/18049784

相关文章

  • json 的基本类型
    JSON(JavaScriptObjectNotation)主要支持以下6种基本数据类型:字符串(String):由一系列Unicode字符组成的序列,用双引号括起来表示。例如:"Hello,world"。注意,在JSON中不能使用单引号来表示字符串,双引号是特殊字符。数字(Number):可以是整数或浮点数。JSON中没有复数类型或特殊的有理数......
  • Java引用类型解析:掌握强引用、软引用、弱引用和幻象引用的妙用
     概述:Java中的引用分为强引用、软引用、弱引用和幻象引用。强引用是最常见的,不会被垃圾回收;软引用在内存不足时才被回收;弱引用在下一次垃圾回收时回收;幻象引用用于检测对象是否已被回收。它们各自适用于不同场景,帮助开发者更灵活地管理对象生命周期,避免内存泄漏。在Java中,引......
  • ThreadLocal解析
    ThreadLocal解析目录ThreadLocal解析1.两大使用场景——ThreadLocal的用途典型场景1:每个线程需要一个独享的对象(通常是工具类,典型需要使用的类有SimpleDateFormat和Random)典型场景2:每个线程内需要保存全局变量(例如在拦截器中获取用户信息),可以让不同方法直接使用,避免参数传递的麻......
  • .NET 全能 Cron 表达式解析库(支持 Cron 所有特性)
    前言今天大姚给大家分享一个.NET全能Cron表达式解析类库,支持Cron所有特性:TimeCrontab。Cron表达式介绍Cron表达式是一种用于配置定时任务的时间表达式。它由一系列字段组成,每个字段代表任务在不同时间维度的调度规则。Cron表达式常用于各种系统中,如操作系统的定时任务、......
  • scrapy数据解析
    importscrapyclassDouSpider(scrapy.Spider):name="dou"#allowed_domains=["www.douban.com"]start_urls=["https://www.douban.com/doulist/113652271/"]defparse(self,response):div_=response......
  • NetCore 动态解析Razor代码
    第一步: Nuget引入:RazorEngine.NetCore 第二步:添加引用usingRazorEngine;usingRazorEngine.Templating; 第三步:代码实现模版替换publicclassFormModel:PageModel{publicstringHtmlCompile{set;get;}=string.Empty;publicvoidOnGet([From......
  • 掌握字符与字符串:C语言中的神奇函数解析(三)
    ✨✨欢迎大家来到贝蒂大讲堂✨✨......
  • LWIP RAW接口TCP与UDP部分函数解析
    RAWTCP接口tcp_input()函数voidtcp_input(structpbuf*p,structnetif*inp) --->staticerr_ttcp_process(structtcp_pcb*pcb) --->staticvoidtcp_receive(structtcp_pcb*pcb) --->>TCP_EVENT_RECV(pcb,recv_data,ERR_OK,err);//调用用户注册......
  • 解决Nginx代理转发中HTTP到HTTPS跳转问题的技术方案解析
    在进行Nginx代理转发时,经常会遇到HTTP到HTTPS跳转的问题,特别是在某些情况下,即使在程序中明确指定了使用HTTPS协议,仍然会出现跳转到HTTP的情况。本文将介绍一种解决这个问题的技术方案,并对问题的原因进行分析。问题描述在进行Nginx代理转发时,配置了HTTPS支持,但在程序中发起请求时......
  • Stable Diffusion 解析:探寻 AI 绘画背后的科技神秘
    AI绘画发展史在谈论StableDiffusion之前,有必要先了解AI绘画的发展历程。早在2012年,华人科学家吴恩达领导的团队训练出了当时世界上最大的深度学习网络。这个网络能够自主学习识别猫等物体,并在短短三天时间内绘制出了一张模糊但可辨识的猫图。尽管这张图片很模糊,但它展示......