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;", ""));
            }
        }
  • 相关阅读:
    Go语言中通过结构体匿名字段实现方法的继承和重载
    项目组:ouc海票票 第十一周Scrum meeting博客作业
    SQL Server数据库
    微信小程序界面美化
    Linux中的fork函数
    ouc2021秋软件工程“海票票”小组 Alpha冲刺阶段博客
    SQL Server数据库的分离和附加
    微信小程序玄学bug记录
    项目组:ouc海票票 alpha阶段测试报告
    项目组:ouc海票票 第十二周Scrum meeting会议记录
  • 原文地址:https://www.cnblogs.com/zyx321/p/13354787.html
Copyright © 2011-2022 走看看