C# json解析demo

csharp 复制代码
using Newtonsoft.Json;
using System;
using System.Collections.Generic;


namespace ConsoleApp2
{
    public class Program
    {

        public static ResponseModel ReceiveData(string json)
        {
            return JsonConvert.DeserializeObject<ResponseModel>(json);
        }

        static void Main(string[] args)
        {
            string res =
                "{\"ResCode\":0,\"Msg\":\"测量完成\",\"Command\":\"meas&number=20200118&expo=white&blackmura=true\",\"Content\":{\"Min\":{\"Value\":52.1971855,\"Cx\":0.0,\"Cy\":1.0},\"Max\":{\"Value\":368.038177,\"Cx\":0.0,\"Cy\":1.0},\"Average\":\"241.07\",\"Uniform\":\"0.142\",\"BlackMuraData\":{\"Num\":[\"1.1\"],\"Testingtime\":[\"2024-09-18 18:44:13\"],\"BlackMura\":[\"0.0349201045608842\"],\"Pass/Fail\":[\"false\"],\"MaxLuminance\":[\"233.066680908203\"],\"MinLuminance\":[\"213.866683959961\"],\"LuminanceAvg\":[\"223.466682434082\"],\"MaxGradient\":[\"3.88060212135315\"],\"Uniformity\":[\"91.7620155427517\"]}}}";


            try
            {
                ResponseModel result = ReceiveData(res);
                foreach (var item in result.Content.BlackMuraData)
                {
                    Console.WriteLine($"{ item.Key } :{ item.Value.First()} ");
                }

            }
            catch (Exception ex)
            {
                Console.WriteLine($"数据解析失败:{ex.Message}");
            }

        }
    }

    public class ResponseModel
    {
        public int ResCode { get; set; }
        public string Msg { get; set; }
        public ContentModel Content { get; set; }
    }

    public class ContentModel
    {
        public MinModel Min { get; set; }
        public MaxModel Max { get; set; }
        public double Average { get; set; }
        public double Uniform { get; set; }
        public Dictionary<string, List<string>> BlackMuraData { get; set; }
    }

    public class MinModel
    {
        public double Value { get; set; }
        public double Cx { get; set; }
        public double Cy { get; set; }
    }

    public class MaxModel
    {
        public double Value { get; set; }
        public double Cx { get; set; }
        public double Cy { get; set; }
    }


}
相关推荐
沐知全栈开发13 分钟前
MongoDB 创建数据库
开发语言
ErizJ32 分钟前
Golang | 迭代器模式
开发语言·golang·迭代器模式
牙痛不能吃糖,哭35 分钟前
C++面试复习日记(8)2025.4.25,malloc,free和new,delete的区别
开发语言·c++
健康的猪39 分钟前
golang的cgo的一点小心得
开发语言·后端·golang
冰茶_43 分钟前
.NET MAUI 发展历程:从 Xamarin 到现代跨平台应用开发框架
学习·microsoft·微软·c#·.net·xamarin
夜夜敲码1 小时前
C语言教程(十六): C 语言字符串详解
c语言·开发语言
宋康1 小时前
C语言结构体和union内存对齐
c语言·开发语言
居然是阿宋1 小时前
Kotlin高阶函数 vs Lambda表达式:关键区别与协作关系
android·开发语言·kotlin
Cao1234567893212 小时前
简易学生成绩管理系统(C语言)
c语言·开发语言
The Future is mine2 小时前
C# new Bitmap(32043, 32043, PixelFormat.Format32bppArgb)报错:参数无效,如何将图像分块化处理?
开发语言·c#