newtonsoft.json 反序列化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了newtonsoft.json 反序列化相关的知识,希望对你有一定的参考价值。

把这段json串反序列化取出姓名 户籍地来'imgsrc':'undefined','renkou':'常住人口','renkouleixing':'人户一致','tianbiaoriqi':'2014年5月31日','guoqishijian':'30','danwei1':'消防大队','tianbiaoren':'','xingming':'王月松','cengyongming':'','imghid':'','minzu':'汉族','xingbie':'男','shenfenzhenghao':'324325','chushengriqi':'1918-01-15','dianhuahaoma':'','weibo':'','huhao':'','huguanxi':'户主','hujidi':'山东菏泽市','hujidixiangzhi':'','xianjudi':''求大神帮忙

参考技术A 先定义个类,包含上方所有属性,
class ModelPerson

//属性名称一定要和上方字符串一样

public string imgsrc(get;set;)

...;
...;



反序列化
:ModelPerson mp= Newtonsoft.Json.JsonConvert.DeserializeObject<ModelPerson>(上方字符串);

获取姓名:mp.name;追问

上面json串中的“ ‘ ”换成 “ ” “咋能

追答

string str=上面json串.Replace(" ' "," \" ");//,将单引换双引,不要有空格,这里为了可以看清,加了空格。

本回答被提问者采纳

Newtonsoft JSON 动态反序列化

【中文标题】Newtonsoft JSON 动态反序列化【英文标题】:Newtonsoft JSON Deserialize Dynamically 【发布时间】:2019-12-20 07:27:51 【问题描述】:

JSON 数据示例:

"t":"1339886","a":true,"data":[],"Type":[['Ants','Biz','Tro']]

我找到了用于 C# 的 Newtonsoft JSON.NET 反序列化库。 如果我使用:

object JsonDe = JsonConvert.DeserializeObject(Json); 

如何在不创建类的情况下访问 JsonDe 对象以获取所有“类型”数据?

提供的 JSON 只是一个示例,我必须管理来自网站的大型 JSON 响应,创建一个类将是一项艰巨的工作。

【问题讨论】:

为 JSON 创建一个类很辛苦 - 您可以将 JSOn 粘贴到 Visual Studio 中,它会为您创建类。 你可以把它转换成字典 您可以使用JToken.Parse()JsonConvert.DeserializeObject&lt;JToken&gt;(Json) 来解析没有固定模式的JSON。请参阅:JObject.Parse vs JsonConvert.DeserializeObject。 顺便说一下,您不需要为整个数据创建一个类。您可以只使用所需数据创建类。其余的将被忽略。 @ŇɏssaPøngjǣrdenlarp 我该怎么做? 【参考方案1】:

您是否考虑过使用 JsonLinq 和 JObject.Parse()?然后,您可以使用以下内容:

string Data = "\"t\":\"1339886\",\"a\":true,\"data\":[],\"Type\":[['Ants','Biz','Tro']]";
JObject J = JObject.Parse(Data);
string[] Types = J["Type"][0].ToObject<string[]>();

注意:我没有针对您的数据结构进行测试。

【讨论】:

以上是关于newtonsoft.json 反序列化的主要内容,如果未能解决你的问题,请参考以下文章

NewtonSoft.JSON 反序列化 - 未正确反序列化。 (VB.NET)

Newtonsoft.Json 处理多态类型的反序列化

如何通过NewtonSoft反序列化对象json列表?

使用 Newtonsoft Json 从流中反序列化多个 json 对象

使用Newtonsoft.Json.dll序列化和反序列化

如何使用 Newtonsoft.Json 反序列化 JSON 数组