关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

关于c#son<--1-->的代码文件详细解析

发布时间:2020-02-25 17:07:50

using System;


using System.Collections.Generic;


using System.Linq;


using System.Text;


using System.ServiceModel;


using System.Runtime.Serialization;


using System.ServiceModel.Web;


using System.Runtime.Serialization.Json;


using System.IO;




namespace json


{


    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;


        }


    }


}



/template/Home/Zkeys/PC/Static