C#中怎么解析JSON數據,並獲取到其中的值?


 

【1】首先我們根據創建一個json字符轉

string json = @"[{'phantom':true,'id':'20130717001','data':{'MID':1019,'Name':'aaccccc','Des':'cc','Disable':'啟用','Remark':'cccc'}}]";

 

【2】首先我們根據創建一個json字符轉

我們根據字符串的數據結構定義兩個類:

  public class Info
        {
            public string phantom { get; set; }
            public string id { get; set; }
            public data data { get; set; }
        }

 

  public class data
        {
            public int MID { get; set; }
            public string Name { get; set; }
            public string Des { get; set; }
            public string Disable { get; set; }
            public string Remark { get; set; }
        }

 

【3】再Main函數中進行操作,如下Main函數:

  static void Main(string[] args)
        {
            string json = @"[{'phantom':true,'id':'20130717001','data':{'MID':1019,'Name':'aaccccc','Des':'cc','Disable':'啟用','Remark':'cccc'}}]";
            List<Info> jobInfoList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Info>>(json);

            foreach (Info jobInfo in jobInfoList)
            {
                Console.WriteLine("UserName:" + jobInfo.id);
                Console.WriteLine("UserName:" + jobInfo.data.MID);
            }
        }

運行結果如下:

UserName:20130717001
UserName:1019

附加,如相同結構帶數組,則使用遞歸遍歷;

 

【4】全部完整代碼

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace JsonProcess
{
    class Program
    {
        public class Info
        {
            public string phantom { get; set; }
            public string id { get; set; }
            public data data { get; set; }
        }

        public class data
        {
            public int MID { get; set; }
            public string Name { get; set; }
            public string Des { get; set; }
            public string Disable { get; set; }
            public string Remark { get; set; }
        }
        static void Main(string[] args)
        {
            string json = @"[{'phantom':true,'id':'20130717001','data':{'MID':1019,'Name':'aaccccc','Des':'cc','Disable':'啟用','Remark':'cccc'}}]";
            List<Info> jobInfoList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Info>>(json);

            foreach (Info jobInfo in jobInfoList)
            {
                Console.WriteLine("UserName:" + jobInfo.id);
                Console.WriteLine("UserName:" + jobInfo.data.MID);
            }
        }
    }
}

 

本文源於zhuxiaoge(http://www.cnblogs.com/zhuxiaoge/p/7095960.html),如有轉載請標明出處,不甚感激!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM