zoukankan      html  css  js  c++  java
  • C# json字符串反序列化

    使用情景:开发中JS传递一个Json格式的字符串到后台,后台将json字符串转化成list集合

     1 public static class json
     2     {
     3         public static List<T> JSONStringToList<T>(this string JsonStr)
     4         {
     5             JavaScriptSerializer Serializer = new JavaScriptSerializer();
     6             List<T> objs = Serializer.Deserialize<List<T>>(JsonStr);
     7             return objs;
     8         }
     9 
    10         public static T Deserialize<T>(string json)
    11         {
    12             T obj = Activator.CreateInstance<T>();
    13             using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(json)))
    14             {
    15                 DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());
    16                 return (T)serializer.ReadObject(ms);
    17             }
    18         }
    19     }

    封装一个json静态类,里面定义了两个静态方法,使用json反序列化的时候只需要调用第一个方法即可:json.JSONStringToList<T>(string    jsonString)

    T:类型  jsonString:为json字符串

    这段代码要添加几个引用:

    1 using System.Web.Script.Serialization;
    2 using System.IO;
    3 using System.Text;
    4 using System.Runtime.Serialization.Json;
  • 相关阅读:
    <cf>Square
    运算符重载
    HDU 1231 最大连续子序列
    Biorhythms(poj1006)
    友元和友元函数
    <poj 1046>Color Me Less
    <cf> Funky Numbers
    VC++中窗口的最大化问题
    励志文章,没事看一下(网上摘录)
    VC多线程编程(转)
  • 原文地址:https://www.cnblogs.com/luna-hehe/p/7291074.html
Copyright © 2011-2022 走看看