c#解析json<--1-->

using System;json

using System.Collections.Generic;spa

using System.Linq;對象

using System.Text;內存

using System.ServiceModel;字符串

using System.Runtime.Serialization;get

using System.ServiceModel.Web;string

using System.Runtime.Serialization.Json;it

using System.IO;io


namespace jsonclass

{

    class Program

    {

        static void Main(string[] args)

        {

            people guanYu = new people(1,"關羽",23);

            MemoryStream ms = new MemoryStream();//建立一個內存流;

            DataContractJsonSerializer jData = new DataContractJsonSerializer(typeof(people));//根據對象的類型建立一個DataContractJsonSerializer對象。感受像是把數據對象類型綁定到該對象上。

            jData.WriteObject(ms, guanYu);//將指定對象,寫入到流中。

            ms.Position = 0;//設置流的當前位置

            StreamReader reader = new StreamReader(ms);//建立一個能夠從流中讀取數據的對象。

            Console.WriteLine(reader.ReadToEnd());//從流的當前位置一直讀到流的末尾,並輸出到控制檯。


            string str = "{\"Age\":1,\"Name\":\"劉備\",\"Id\":10}";  //要轉換成json對象的字符串

            MemoryStream mss = new MemoryStream(Encoding.UTF8.GetBytes(str));//建立內存流,把字節序列化的json字符串當作參數傳入到實例化類中

            people liuBei = jData.ReadObject(mss) as people;//轉化成json對象

            Console.WriteLine(liuBei.Name);

        }

    }

    [DataContract]

    public class people

    {

        /// <summary>

        /// id,name,age

        /// </summary>

        /// <param name="id"></param>

        /// <param name="name"></param>

        /// <param name="age"></param>

        public people(int id, string name, int age)

        {

            Name = name;

            Id = id;

            Age = age;

        }

        [DataMember]

        public string Name

        {

            set;

           get;

        }

        [DataMember]

        public int Age

        {

            set;

            get;

        }

        [DataMember]

        public int Id

        {

            set;

            get;

        }

    }

}

相關文章
相關標籤/搜索