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;

        }

    }

}

相关文章
相关标签/搜索