Json序列化和反序列化(两种方式)

序列化:对象--->Json 反序列化:Json--->对象
方式1:.NET3.5自带类库实现
.net3.5提供了json对象序列化与反序列化的类。位置在:System.Runtime.Serialization.Json空间下。其中如果要应用这个空间还必须添加对
System.ServiceModel
System.ServiceModel.Web
这两个库文件的引用。
复制代码
        public class Student
        {
            public int ID { get; set; }

            public string Name { get; set; }

            public int Age { get; set; }

            public string Sex { get; set; }
        }
        #region(使用 DataContractJsonSerializer 序列化,.net3.5)
        public string ToJson(Student St)//序列化
        {

            DataContractJsonSerializer dj = new DataContractJsonSerializer(typeof(Student));
            MemoryStream ms = new MemoryStream();
            dj.WriteObject(ms, St);
            string strReturn = Encoding.UTF8.GetString(ms.ToArray());
            ms.Close();
            return strReturn;
        }
        public object FromJson(string strJson)//反序列化
        {
            DataContractJsonSerializer dj = new DataContractJsonSerializer(typeof(Student));
            MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(strJson));
            return dj.ReadObject(ms);
        }
        #endregion
复制代码
方式2:使用Newtonsoft.Json.dll文件来实现

复制代码
        #region(使用JsonConvert序列化,需要引用Newtonsoft.json)
        public string ToJson2(object ob)//序列化
        {
            string json = JsonConvert.SerializeObject(ob);
            return json;
        }
    
        public object FromJson2(string strjson)
        {
            object ob1 = JsonConvert.DeserializeObject(strjson);
            return ob1;
        } 
        #endregion
复制代码

 

posted @   四月柳巷  阅读(95)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 我与微信审核的“相爱相杀”看个人小程序副业
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~
点击右上角即可分享
微信分享提示