1、引用命名空间:

using System.Runtime.Serialization;

2、json的序列化和反序列化的方法:

publicclass JsonHelper
{
///<summary>
/// 序列化
///</summary>
///<typeparam name="T"></typeparam>
///<param name="t"></param>
///<returns></returns>
publicstaticstring JsonSerializer<T>(T t)
{
string jsonString =string.Empty;
DataContractJsonSerializer ser =new DataContractJsonSerializer(typeof(T));
MemoryStream ms =new MemoryStream();
ser.WriteObject(ms, t);
jsonString = Encoding.UTF8.GetString(ms.ToArray());
ms.Close();
return jsonString;
}
///<summary>
/// 反序列化
///</summary>
///<typeparam name="T"></typeparam>
///<param name="jsonString"></param>
///<returns></returns>
publicstatic T JsonDeserialize<T>(string jsonString)
{
T obj =default(T);
DataContractJsonSerializer ser=new DataContractJsonSerializer(typeof(T));
MemoryStream ms =new MemoryStream(Encoding.UTF8.GetBytes(jsonString));
obj = (T)ser.ReadObject(ms);
return obj;
}
}

3、现在先准备一个Person类:

class Person
{
[DataMemberAttribute]
publicstring Name { get; set; }
[DataMemberAttribute]
publicint Age { get; set; }
[DataMemberAttribute]
publicstring Gender { get; set; }
}

4、现在就用JsonHelper方法把Person类的对象序列化成Json格式。

Person p =new Person { Name ="张三", Age =12, Gender ="男" };
string str = JsonHelper.JsonSerializer<Person>(p);
Console.WriteLine(str);

5、结果:

{"Age":12,"Gender":"男","Name":"张三"}

6、再把Json格式反序列化为Person类型:

p = JsonHelper.JsonDeserialize<Person>(str);
Console.WriteLine("{0},{1},{2}",p.Name,p.Age,p.Gender);

7、结果:

张三,12,男

转载于:https://www.cnblogs.com/sirkevin/archive/2011/06/16/2083004.html

Json的序列化和反序列化相关推荐

  1. 在C#中,Json的序列化和反序列化的几种方式总结

    在C#中,Json的序列化和反序列化的几种方式总结 在这篇文章中,我们将会学到如何使用C#,来序列化对象成为Json格式的数据,以及如何反序列化Json数据到对象. 什么是JSON? JSON (Ja ...

  2. ASP.NET中JSON的序列化和反序列化

    JSON是专门为浏览器中的网页上运行的JavaScript代码而设计的一种数据格式.在网站应用中使用JSON的场景越来越多,本文介绍ASP.NET中JSON的序列化和反序列化,主要对JSON的简单介绍 ...

  3. Newtonsoft.Json 的序列化与反序列化

    首先补充一点,Json.Net是支持序列化和反序列化DataTable,DataSet,Entity Framework和NHibernate的.我举例说明DataTable的序列化和反序列化. 创建 ...

  4. Json.Net系列教程 3.Json.Net序列化和反序列化设置

    上节补充 首先补充一点,Json.Net是支持序列化和反序列化DataTable,DataSet,Entity Framework和NHibernate的.我举例说明DataTable的序列化和反序列 ...

  5. java newtonsoft.json_Newtonsoft.Json 的序列化与反序列化

    首先补充一点,Json.Net是支持序列化和反序列化DataTable,DataSet,Entity Framework和NHibernate的.我举例说明DataTable的序列化和反序列化. 创建 ...

  6. 一起谈.NET技术,ASP.NET 中JSON 的序列化和反序列化

    JSON是专门为浏览器中的网页上运行的JavaScript代码而设计的一种数据格式.在网站应用中使用JSON的场景越来越多,本文介绍ASP.NET中JSON的序列化和反序列化,主要对JSON的简单介绍 ...

  7. C#中的Json的序列化和反序列化

    Json是一种通用的数据格式,我们在数据交换的时候,经常会用到,下面介绍c#中的json序列化和反序列化,当然也可用在asp.net,silverlight,wpf中.我们在下面实例讲解如何进行Jso ...

  8. C# JSON字符串序列化与反序列化(转)

    C# JSON字符串序列化与反序列化 C#将对象序列化成JSON字符串 public string GetJsonString() { List<Product> products = n ...

  9. ASP.NET Core 3.1系列(30)——Newtonsoft.Json实现JSON的序列化和反序列化

    1.前言 在早期版本的ASP.NET Core项目中,Newtonsoft.Json的使用率非常高.虽然微软当前主推System.Text.Json来处理JSON的序列化和反序列化,但Newtonso ...

最新文章

  1. 可以从max中导出静态模型并渲染了。
  2. 获取Ip所在城市名与详细
  3. “脚踢各大Python Web框架”,Sanic真有这能耐么?
  4. 高中计算机网络功能,高中生自我教育中如何发挥计算机网络信息的作用
  5. ARM处理器系统初始化编程注意事项
  6. Java 输入/输出 I/O流 RandomAccessFile
  7. 【金融人士工具大全】整理不易,且珍惜
  8. 基于Vue的移动端图片裁剪组件 vue-clip(完美兼容ios与安卓)
  9. python制作日历_用Python制作一份你专属的爱豆日历
  10. CentOS官网下载对应版本
  11. 圣诞帽php,微信小程序“圣诞帽”的实现方法
  12. fpga学习之vga驱动
  13. 《世界尽头与冷酷仙境》后感
  14. jquery fullpage
  15. 笔记本连接外接显示器后耳机没有声音
  16. 猿圈笔试系统java_小猿圈分享Java面试题
  17. Java Web研发工程师新手入门指南
  18. 在字符串两侧填充指定字符ljust()与rjust()方法
  19. 人工智能专业需要什么电脑
  20. Python爬虫 - 爬天爬地爬空气

热门文章

  1. opencv根据直线方程求交点坐标
  2. 机器学习中的算法(4.3):SVM----针对线性不可分问题理解
  3. Python Qt GUI设计:QPainter、QPen、QBrush和QPixmap窗口绘图类(基础篇—17)
  4. 优达学城《DeepLearning》项目1:预测每日自行车租赁客流量
  5. mask rcnn网络结构笔记
  6. 机器学习(11)线性回归(2)实战 -- 正规方程优化、梯度下降优化(波士顿房价预测)
  7. php post 文件,PHP响应post请求上传文件的方法_php技巧
  8. 查找计算机 域服务不可用,win7系统打印文件提示Active Directory域服务不可用解决方法...
  9. ios xib 四等分_ios Xib的几种用法[转]
  10. webstorm设置TSlint格式化TypeScript代码快捷键Alt+X