zoukankan      html  css  js  c++  java
  • C# JArray与JObject 的使用

    STEP1、using Newtonsoft.Json.Linq;

    STEP2 如何获取json里的某个属性(节点)值,对其删改,新增

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    //2.1 数组用JArray加载
     
    string jsonText = "[{'a':'aaa','b':'bbb','c':'ccc'},{'a':'aa','b':'bb,'c':'cc'}]";  
     
    var mJObj = JArray.Parse(jsonText);
     
    //需求,删除列表里的a节点的值为'aa'的项
     
    IList<JToken> delList = new List<JToken>(); //存储需要删除的项
     
    foreach (var ss in mJObj )  //查找某个字段与值
    {
    if(((JObject) ss)["a"]=='aa')
     
    delList .add(ss);
    }
     
    foreach (var item in delList )  //移除mJObj  在delList 里的项
    {
     
    mJObj .remove(item); 
    }
     
     
     
    //2.2 非数组用JObject加载 (这里主要以这个为例子)
     
    string jsonText = "[{'a':'aaa','b':'bbb','c':'ccc'}]";  
     
    var mJObj = JObject.Parse(jsonText t);
     
    mJObj.Add() //新增,没试过
     
    var v1=mJObj[a].ToString()  //得到'aaa'的值

      

    以上的例子可交互灵活使用

    注意事项,JArray 只能用来查找索引的项的对象,找到对象需要转换为 JObject,再查找对应的属性值

    其他写法补充

    1、属性下嵌套json (非数组)遍历其包含的属性列表

    var xx = ((mJObj["dim"])).Children().Values(); 

    foreach (var item in xx)
    {
    var dimID = ((JObject) item)["id"];

    }

  • 相关阅读:
    重建二叉树
    从尾到头打印链表
    合并两个数组
    替换空格
    二维数组中的查找
    机器学习中的 precision、recall、accuracy、F1 Score
    rand、randi和randn的区别?
    使用自己的数据集训练和测试"caffenet"
    caffe环境的搭建(Ubuntu14.04 64bit,无CUDA,caffe在CPU下运行)
    Java 并发工具包 java.util.concurrent 用户指南
  • 原文地址:https://www.cnblogs.com/zxtceq/p/6610216.html
Copyright © 2011-2022 走看看