zoukankan      html  css  js  c++  java
  • json转换帮助类

        /// <summary>
        /// json转换帮助类
        /// </summary>
        public static class JsonHelper
        {
            /*
             
            实例:
    
                JObject obj = new JObject();
                obj.Add("code", "0");
                obj.Add("msg", "成功");
    
                JArray jarr = new JArray();
    
                JObject now = new JObject();
                now.Add("id", 100);
                now.Add("name", "关羽");
                now.Add("date", "2020-07-21 15:05:21");
                jarr.Add(now);
    
                now = new JObject();
                now.Add("id", 101);
                now.Add("name", "张飞");
                now.Add("date", "2020-07-21 15:06:21");
                jarr.Add(now);
    
                obj.Add("data", jarr);
    
                TestClass test = JsonHelper.ToObject<TestClass>(obj.ToString());
                string json = test.ToJson("yyyy-MM-dd HH:mm:ss");
                JObject testClass = JsonHelper.ToJObject(obj.ToString());
    
    
    
    
            public class TestClass
            {
                public int code { set; get; }
                public string msg { set; get; }
                public List<dataClass> data { set; get; }
    
                public class dataClass
                {
                    public string id { set; get; }
    
                    public string name { set; get; }
    
                    public DateTime date { set; get; }
                }
            }
    
    
            */
    
    
            /// <summary>
            /// 字符串是否为空
            /// </summary>
            /// <param name="value"></param>
            /// <returns></returns>
            public static bool IsNotEmpty(this string value)
            {
                return string.IsNullOrWhiteSpace(value) == false;
            }
    
            /// <summary>
            /// model对象转为json字符串
            /// </summary>
            /// <param name="obj"></param>
            /// <returns></returns>
            public static string ToJson(this object obj)
            {
                return obj == null ? null : JsonConvert.SerializeObject(obj);
            }
    
            /// <summary>
            /// model对象转为json字符串
            /// </summary>
            /// <param name="obj"></param>
            /// <param name="datetimeformats">时间格式,如:yyyy-MM-dd HH:mm:ss yyyy/MM/dd HH:mm:ss</param>
            /// <returns></returns>
            public static string ToJson(this object obj, string datetimeformats)
            {
                var timeConverter = new IsoDateTimeConverter { DateTimeFormat = datetimeformats };
                return JsonConvert.SerializeObject(obj, timeConverter);
            }
    
            /// <summary>
            /// json字符串转为model对象
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <param name="Json"></param>
            /// <returns></returns>
            public static T ToObject<T>(this string Json)
            {
                try
                {
                    return Json.IsNotEmpty() == false ? default(T) : JsonConvert.DeserializeObject<T>(Json);
                }
                catch (Exception ex)
                {
                    return default(T);
                }
    
            }
    
            /// <summary>
            /// json字符串转为泛型集合
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <param name="Json"></param>
            /// <returns></returns>
            public static List<T> ToList<T>(this string Json)
            {
                return Json == null ? null : JsonConvert.DeserializeObject<List<T>>(Json);
            }
    
            /// <summary>
            /// json字符串转为DataTable表格
            /// </summary>
            /// <param name="Json"></param>
            /// <returns></returns>
            public static DataTable ToTable(this string Json)
            {
                return Json == null ? null : JsonConvert.DeserializeObject<DataTable>(Json);
            }
    
            /// <summary>
            /// json字符串转为json对象
            /// </summary>
            /// <param name="Json"></param>
            /// <returns></returns>
            public static JObject ToJObject(this string Json)
            {
                return Json == null ? JObject.Parse("{}") : JObject.Parse(Json.Replace("&nbsp;", ""));
            }
        }
  • 相关阅读:
    Java实现 蓝桥杯 算法提高 7-1用宏求球的体积
    Java实现 蓝桥杯 算法提高 递推求值
    Java实现 蓝桥杯 算法提高 矩阵相乘
    当时忍住就好了——关键时刻忍得住,告别容易后悔的人生
    心若向阳,何惧忧伤——没有注定的不幸,只有死不放手的执着——人大部分的痛苦,都是不肯离场的结果
    你只需努力 剩下的交给时光(你不对自己狠,就别怪别人对你狠)
    事情已经到了这一步,要赌就只能全力以赴——红朝的那些事情(四三二)
    SlimFTPd, LFTP和FileZilla Client/Server
    Redis .NET开源组件Beetle.Redis
    .NET/ASP.NETMVC 深入剖析 Model元数据、HtmlHelper、自定义模板、模板的装饰者模式2
  • 原文地址:https://www.cnblogs.com/zyx321/p/13354787.html
Copyright © 2011-2022 走看看