C# 使用Newtonsoft.Json来读取JOSN数组

怎么在C#工程中安装Newtonsoft在这里就不提了,随便搜一下就有教程反正也是用NuGet包管理器安装。这里记录一下怎么读取JSON节点。

假如有如下JSON:

{
    "春哥": "纯爷们",
    "data": {
        "chun": 567890,
        "list": [
            {
                "id": "12345",
                "age": 5,
                "Job_number": 9049
            }
        ]
    }
}

刚开始学用这个Newtonsoft的时候别人的博客给出的演示例子是先声明一个类,然后实例化这个类,用访问类的数据成员的方式来访问JSON节点,这就比较麻烦了,Newtonsoft其实提供了直接把一整个JSON数据打包成一个JObject对象的方法,然后就可以像用类似数组的方式来访问这些节点。

首先导入支持库:

using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
string content="{\"春哥\": \"纯爷们\",\"data\": {\"chun\": 567890,\"list\": [{\"id\": \"12345\",\"age\": 5,\"Job_number\": 9049}]}}"
JObject json = JObject.Parse(content);

//读取春哥节点
string enumGroupName = json["春哥"].ToString();
Console.WriteLine($"春哥:{enumGroupName}");

那么要怎么访问list这个数组呢?这个数组是JSON里比较常见的套娃数据,例:

string content="{\"春哥\": \"纯爷们\",\"data\": {\"chun\": 567890,\"list\": [{\"id\": \"12345\",\"age\": 5,\"Job_number\": 9049}]}}"
JObject json = JObject.Parse(content);

//虽然这个list数组里只有一个元素那也得写上索引
string enumGroupName = json["data"]["list"][0]["id"].ToString();
Console.WriteLine($"春哥:{enumGroupName}");

{
    "春哥": "纯爷们",
    "data": {
        "chun": 567890,
        "list": [
            {
                "id": "12343",
                "age": 3,
                "Job_number": 7039
            },

            {
                "id": "12347",
                "age": 4,
                "Job_number": 8029
            },

            {
                "id": "12340",
                "age": 5,
                "Job_number": 9089
            }
        ]
    }
}

如何遍历数组:

foreach (var item in json["data"]["list"])
{
    //遍历每一个{ }里的id节点
    Console.WriteLine(item["id"].ToString());

}

相关推荐

  1. C# 使用Newtonsoft.Json读取JOSN数组

    2024-02-21 13:44:02       29 阅读
  2. c#读取getman网址中的json

    2024-02-21 13:44:02       29 阅读
  3. qt学习:json数据文件读取写入

    2024-02-21 13:44:02       36 阅读
  4. js读取json的固定数据的一种方法

    2024-02-21 13:44:02       37 阅读
  5. json模块(高维数据的存储与读取

    2024-02-21 13:44:02       26 阅读
  6. Unity 安卓将数据保存为json读取

    2024-02-21 13:44:02       17 阅读
  7. golang读取json文件

    2024-02-21 13:44:02       45 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-21 13:44:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-21 13:44:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-21 13:44:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-21 13:44:02       20 阅读

热门阅读

  1. Python 命令补全工具 argcomplete

    2024-02-21 13:44:02       29 阅读
  2. 设计模式面试系列-02

    2024-02-21 13:44:02       32 阅读
  3. 数学物理方法笔记——Γ函数

    2024-02-21 13:44:02       66 阅读
  4. 开源大数据管理平台选型

    2024-02-21 13:44:02       25 阅读
  5. 一些用 GPT 翻译的计算机科学/人工智能 PDF 讲义

    2024-02-21 13:44:02       32 阅读
  6. 代码随想录算法训练营总结

    2024-02-21 13:44:02       29 阅读
  7. CSS中伪元素和伪类的区别和作用?

    2024-02-21 13:44:02       30 阅读
  8. GO框架基础 (三)、xorm库

    2024-02-21 13:44:02       31 阅读
  9. LeetCode刷题笔记之二叉树(二)

    2024-02-21 13:44:02       23 阅读
  10. 【Lazy ORM 高级映射】1.2.2-JDK17-SNAPSHOT

    2024-02-21 13:44:02       27 阅读
  11. OpenCart程序结构与业务逻辑

    2024-02-21 13:44:02       33 阅读