首页 > 编程 > C# > 正文

C#编程实现对象与JSON串互相转换实例分析

2019-10-29 21:36:20
字体:
来源:转载
供稿:网友

这篇文章主要介绍了C#编程实现对象与JSON串互相转换的方法,结合实例分析了在DoNet2.0与Donet3.5环境下实现对象与JSON转换的相关技巧,需要的朋友可以参考下

本文实例分析了C#编程实现对象与JSON串互相转换的方法。分享给大家供大家参考,具体如下:

DoNet2.0 需要借助于Newtonsoft.Json.dll

代码如下:

 

 
  1. using System; 
  2. using System.IO; 
  3. using System.Text; 
  4. using Newtonsoft.Json; 
  5. namespace OfflineAcceptControl.UCTools 
  6. public class JsonTools 
  7. // 从一个对象信息生成Json串 
  8. public static string ObjectToJson(object obj) 
  9. return JavaScriptConvert.SerializeObject(obj); 
  10. // 从一个Json串生成对象信息 
  11. public static object JsonToObject(string jsonString, object obj) 
  12. return JavaScriptConvert.DeserializeObject(jsonString, obj.GetType()); 

Donet3.5自带了DLL处理json串

注意引用:System.Runtime.Serialization,System.ServiceModel.Web

代码如下:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.IO; 
  4. using System.Linq; 
  5. using System.Text; 
  6. using System.Runtime.Serialization; 
  7. using System.Runtime.Serialization.Json; 
  8. namespace CrjIIOfflineAccept.CrjIITools 
  9. public class JsonTools 
  10. // 从一个对象信息生成Json串 
  11. public static string ObjectToJson(object obj) 
  12. DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType()); 
  13. MemoryStream stream = new MemoryStream(); 
  14. serializer.WriteObject(stream, obj); 
  15. byte[] dataBytes = new byte[stream.Length]; 
  16. stream.Position = 0; 
  17. stream.Read(dataBytes, 0, (int)stream.Length); 
  18. return Encoding.UTF8.GetString(dataBytes); 
  19. // 从一个Json串生成对象信息 
  20. public static object JsonToObject(string jsonString, object obj) 
  21. DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType()); 
  22. MemoryStream mStream = new MemoryStream(Encoding.UTF8.GetBytes(jsonString)); 
  23. return serializer.ReadObject(mStream); 

希望本文所述对大家C#程序设计有所帮助。


注:相关教程知识阅读请移步到c#教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表