zoukankan      html  css  js  c++  java
  • Json序列化对象

    之前都是用的二进制的序列化方法,是.net自带的,但是最常用到的还是Json序列化

    (1)只需要调用 Newtonsoft.Json.dll 即可

    public class JsonTools
    {
    // 从一个对象信息生成Json串
    public static string ObjectToJson(object obj)
    {
    return JavaScriptConvert.SerializeObject(obj);
    }
    // 从一个Json串生成对象信息
    public static object JsonToObject(string jsonString, object obj)
    {
    return JavaScriptConvert.DeserializeObject(jsonString, obj.GetType());
    }
    }

    据说上面这个效率比较低

    (2)调用Josn.net 效率高点,利用泛型无需转换

    public class JsonTools
    {
    // 从一个对象信息生成Json串
    public static string ObjectToJson(object obj)
    {

    return Newtonsoft.Json.JsonConvert.SerializeObject(obj);
    }
    // 从一个Json串生成对象信息
    public static T JsonToObject<T>(string jsonString ) where T:class
    {
    T result = Newtonsoft.Json.JsonConvert.DeserializeObject<T>(jsonString);
    return result; 
    }
    }

    或者用扩展方法

    public static class JsonHelper
    {
    public static String ToJson<T>(this T ojb) where T:class
    {
    return JsonConvert.SerializeObject(ojb, Formatting.Indented);

    }
    public static T ToInstance<T>(this String jsonStr) where T : class
    {
    var instance = JsonConvert.DeserializeObject<T>(jsonStr);

    return instance;

    }
    }

  • 相关阅读:
    java IO输入输出流实现文本复制
    java HashMap
    java TreeSet 实现存自定义不可重复数据
    java中的ArrayList 使得集合中的对象不重复
    java 多线程执行过程
    final关键字的使用
    java中==和equals的区别
    java面向对象理解
    java语言基础(变量和运算符)
    学习Java第一天,大致了解
  • 原文地址:https://www.cnblogs.com/zhshlimi/p/4997549.html
Copyright © 2011-2022 走看看