分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

不规则的JSON解析(一)

发布时间:2023-09-06 01:32责任编辑:熊小新关键词:暂无标签

现有如下数据结构:

{
  "orderId":"000001",
  "goodsId[0]":"001",
  "goodsId[2]":"002",
  "goodsId[3]":"003",
}

goodsId 是无限延伸下去的,问如何解析。

显然,定义类然后解析的思路肯定行不通,即使用dynamic(不需要定义实体类,直接取对应key的值),如: dynamic obj = JsonConvert.DeserializeObject(json); 这样也不行,原因是obj.orderId可以表示,但后面的带有[]的,无法取出。

因此我们必须要换个思路。通过转换为JObject对象的属性Property,获取对应的Value,因此代码如下。

 string json = "{\"orderId\":\"000001\",\"goodsId[0]\":\"001\",\"goodsId[3]\":\"003\",\"goodsId[10]\":\"new data\"}"; JObject jsonObj = JsonConvert.DeserializeObject(json) as JObject; foreach (var p in jsonObj.Properties().ToArray()) ????Console.WriteLine("key={0}, value={1}", ????????p.Name, jsonObj[p.Name].Value<string>());

不规则的JSON解析(一)

原文地址:https://www.cnblogs.com/guwei4037/p/8118258.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved