• Json序列化与反序列化(对象与Json字符串的转换)--C#


     1 public class JsonHelper
     2     {
     3 
     4         #region Json序列化与反序列化
     5 
     6         /// <summary>
     7         /// 将json转化为对象
     8         /// (需要提前构造好结构一致的Model接取数据,且同名字段才可接取数据)
     9         /// </summary>
    10         /// <typeparam name="T">对象类型</typeparam>
    11         /// <param name="json">Json字符串</param>
    12         /// <returns></returns>
    13         public T ConvertJsonToObject<T>(string json)
    14         {
    15             try
    16             {
    17                 DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T));  //传入对象类型               
    18                 MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(json));   //把Json传入内存流中保存               
    19                 T obj = (T)serializer.ReadObject(stream);   //使用ReadObject方法反序列化成对象
    20                 return obj;
    21             }
    22             catch(Exception ex) { throw ex; }
    23             
    24         }
    25 
    26         /// <summary>
    27         /// 将对象转化为Json
    28         /// </summary>
    29         /// <param name="obj"></param>
    30         /// <returns></returns>
    31         public string ConvertObjectToJson(object obj)
    32         {
    33             try
    34             {
    35                 string jsonStr = JsonConvert.SerializeObject(obj);  //序列化对象
    36                 return jsonStr;
    37             }
    38             catch(Exception ex) { throw ex; }
    39         }
    40 
    41         #endregion

    注:所用的为using Newtonsoft.Json,需要在VS包管理器下载安装

  • 相关阅读:
    泰国行记三:PP岛三天的休闲时光
    泰国行记二:普吉印象
    177. Nth Highest Salary
    176. Second Highest Salary
    175. Combine Two Tables
    Regular Expression Matching
    斐波那契数列
    用两个栈实现队列
    二叉树的下一个节点
    重建二叉树
  • 原文地址:https://www.cnblogs.com/xiaomengshan/p/11282502.html
Copyright © 2020-2023  润新知