成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

jsonHelper

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI.WebControls; using System.Text; using System.Data; using System.Collections; using System.Reflection; using System.Text.RegularExpressions; using System.Web.UI.HtmlControls; using System.Web.Script.Serialization;   using CMDS.ORMappers; using System.IO;   namespace CMDS.Common {     /// <summary>     /// Json處理類(lèi) Devil20120412     /// </summary>     public static class JsonHelper     {        public static JavaScriptSerializer Serializer = new JavaScriptSerializer();           /// <summary>         /// List轉(zhuǎn)化為Json         /// </summary>         /// <param name="obj"></param>         /// <returns></returns>         public static string ListToJson(object obj)         {             return Serializer.Serialize(obj);         }               /// <summary>         /// Json轉(zhuǎn)換為L(zhǎng)ist         /// </summary>         /// <param name="list"></param>         /// <param name="jsons"></param>         /// <returns></returns>         public static List<T> JsonToList<T>(string jsons)         {             return Serializer.Deserialize<List<T>>(jsons);         }           /// <summary>         /// Json轉(zhuǎn)換為Mode實(shí)體         /// </summary>         /// <param name="jsons"></param>         /// <returns></returns>         public static T JsonToModel<T>(string jsons)         {             return Serializer.Deserialize<T>(jsons);           }           ///// <summary>         ///// List轉(zhuǎn)成json          ///// </summary>         ///// <typeparam name="T"></typeparam>         ///// <param name="jsonName"></param>         ///// <param name="list"></param>         ///// <returns></returns>         //public static string ListToJson<T>(IList<T> list, string jsonName)         //{         //    StringBuilder Json = new StringBuilder();         //    if (string.IsNullOrEmpty(jsonName))         //        jsonName = list[0].GetType().Name;         //    Json.Append("{\"" + jsonName + "\":[");         //    if (list.Count > 0)         //    {         //        for (int i = 0; i < list.Count; i++)         //        {         //            T obj = Activator.CreateInstance<T>();         //            PropertyInfo[] pi = obj.GetType().GetProperties();         //            Json.Append("{");         //            for (int j = 0; j < pi.Length; j++)         //            {         //                Type type;         //                object o = pi[j].GetValue(list[i], null);         //                string v = string.Empty;         //                if (o != null)         //                {         //                    type = o.GetType();         //                    v = o.ToString();         //                }         //                else         //                {         //                    type = typeof(string);         //                }           //                Json.Append("\"" + pi[j].Name.ToString() + "\":" + StringFormat(v, type));           //                if (j < pi.Length - 1)         //                {         //                    Json.Append(",");         //                }         //            }         //            Json.Append("}");         //            if (i < list.Count - 1)         //            {         //                Json.Append(",");         //            }         //        }         //    }         //    Json.Append("]}");         //    return Json.ToString();         //}           /// <summary>          /// 將Json序列化的時(shí)間由/Date(1294499956278+0800)轉(zhuǎn)為字符串          /// </summary>          private static string ConvertJsonDateToDateString(Match m)         {             string result = string.Empty;             DateTime dt = new DateTime(1970, 1, 1);             dt = dt.AddMilliseconds(long.Parse(m.Groups[1].Value));             dt = dt.ToLocalTime();             result = dt.ToString("yyyy-MM-dd HH:mm:ss");             return result;         }           /// <summary>           /// 將時(shí)間字符串轉(zhuǎn)為Json時(shí)間          /// </summary>          private static string ConvertDateStringToJsonDate(Match m)         {             string result = string.Empty;             DateTime dt = DateTime.Parse(m.Groups[0].Value);             dt = dt.ToUniversalTime();             TimeSpan ts = dt - DateTime.Parse("1970-01-01");             result = string.Format("\\/Date({0}+0800)\\/", ts.TotalMilliseconds);             return result;         }           ///// <summary>         ///// List轉(zhuǎn)成json          ///// </summary>         ///// <typeparam name="T"></typeparam>         ///// <param name="list"></param>         ///// <returns></returns>         //public static string ListToJson<T>(IList<T> list)         //{           //    object obj = list[0];         //    return ListToJson<T>(list, obj.GetType().Name);         //}           /// <summary>          /// 對(duì)象轉(zhuǎn)換為Json字符串          /// </summary>          /// <param name="jsonObject">對(duì)象</param>          /// <returns>Json字符串</returns>          public static string ToJson(object jsonObject)         {             try             {                 StringBuilder jsonString = new StringBuilder();                 jsonString.Append("{");                 PropertyInfo[] propertyInfo = jsonObject.GetType().GetProperties();                 for (int i = 0; i < propertyInfo.Length; i++)                 {                     object objectValue = propertyInfo[i].GetGetMethod().Invoke(jsonObject, null);                     if (objectValue == null)                     {                         continue;                     }                     StringBuilder value = new StringBuilder();                     if (objectValue is DateTime || objectValue is Guid || objectValue is TimeSpan)                     {                         value.Append("\"" + objectValue.ToString() + "\"");                     }                     else if (objectValue is string)                     {                         value.Append("\"" + objectValue.ToString() + "\"");                     }                     else if (objectValue is IEnumerable)                     {                         value.Append(ToJson((IEnumerable)objectValue));                     }                     else                     {                         value.Append("\"" + objectValue.ToString() + "\"");                     }                     jsonString.Append("\"" + propertyInfo[i].Name + "\":" + value + ","); ;                 }                 return jsonString.ToString().TrimEnd(',') + "}";             }             catch (Exception ex)             {                 throw ex;             }         }           /// <summary>          /// 對(duì)象集合轉(zhuǎn)換Json          /// </summary>          /// <param name="array">集合對(duì)象</param>          /// <returns>Json字符串</returns>          public static string ToJson(IEnumerable array)         {             string jsonString = "[";             foreach (object item in array)             {                 jsonString += ToJson(item) + ",";             }             if (jsonString.Length > 1)             {                 // jsonString.Remove(jsonString.Length - 1, 1);                 jsonString = jsonString.TrimEnd(',');             }             else             {                 jsonString = "[]";             }             return jsonString + "]";         }           /// <summary>          /// 普通集合轉(zhuǎn)換Json          /// </summary>          /// <param name="array">集合對(duì)象</param>          /// <returns>Json字符串</returns>          public static string ToArrayString(IEnumerable array)         {             string jsonString = "[";             foreach (object item in array)             {                 jsonString = ToJson(item.ToString()) + ",";             }             jsonString.Remove(jsonString.Length - 1, jsonString.Length);             return jsonString + "]";         }           /// <summary>          /// Datatable轉(zhuǎn)換為Json          /// </summary>          /// <param name="table">Datatable對(duì)象</param>          /// <returns>Json字符串</returns>          public static string ToJson(DataTable dt)         {             StringBuilder jsonString = new StringBuilder();             jsonString.Append("[");             DataRowCollection drc = dt.Rows;             for (int i = 0; i < drc.Count; i++)             {                 jsonString.Append("{");                 for (int j = 0; j < dt.Columns.Count; j++)                 {                     string strKey = dt.Columns[j].ColumnName;                     string strValue = drc[i][j].ToString();                     Type type = dt.Columns[j].DataType;                     jsonString.Append("\"" + strKey + "\":");                     strValue = StringFormat(strValue, type);                     if (j < dt.Columns.Count - 1)                     {                         jsonString.Append(strValue + ",");                     }                     else                     {                         jsonString.Append(strValue);                     }                 }                 jsonString.Append("},");             }             jsonString.Remove(jsonString.Length - 1, 1);             jsonString.Append("]");             if (jsonString.Length == 1)             {                 return "[]";             }             return jsonString.ToString();         }                   /// <summary>         /// DataTable轉(zhuǎn)成Json          /// </summary>         /// <param name="jsonName"></param>         /// <param name="dt"></param>         /// <returns></returns>         public static string ToJson(DataTable dt, string jsonName)         {             StringBuilder Json = new StringBuilder();             if (string.IsNullOrEmpty(jsonName))                 jsonName = dt.TableName;             Json.Append("{\"" + jsonName + "\":[");             if (dt.Rows.Count > 0)             {                 for (int i = 0; i < dt.Rows.Count; i++)                 {                     Json.Append("{");                     for (int j = 0; j < dt.Columns.Count; j++)                     {                         Type type = dt.Rows[i][j].GetType();                         Json.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":" + StringFormat(dt.Rows[i][j] is DBNull ? string.Empty : dt.Rows[i][j].ToString(), type));                         if (j < dt.Columns.Count - 1)                         {                             Json.Append(",");                         }                     }                     Json.Append("}");                     if (i < dt.Rows.Count - 1)                     {                         Json.Append(",");                     }                 }             }             Json.Append("]}");             return Json.ToString();         }           /// <summary>          /// DataReader轉(zhuǎn)換為Json          /// </summary>          /// <param name="dataReader">DataReader對(duì)象</param>          /// <returns>Json字符串</returns>          public static string ToJson(IDataReader dataReader)         {             try             {                 StringBuilder jsonString = new StringBuilder();                 jsonString.Append("[");                   while (dataReader.Read())                 {                     jsonString.Append("{");                     for (int i = 0; i < dataReader.FieldCount; i++)                     {                         Type type = dataReader.GetFieldType(i);                         string strKey = dataReader.GetName(i);                         string strValue = dataReader[i].ToString();                         jsonString.Append("\"" + strKey + "\":");                         strValue = StringFormat(strValue, type);                         if (i < dataReader.FieldCount - 1)                         {                             jsonString.Append(strValue + ",");                         }                         else                         {                             jsonString.Append(strValue);                         }                     }                     jsonString.Append("},");                 }                 if (!dataReader.IsClosed)                 {                     dataReader.Close();                 }                 jsonString.Remove(jsonString.Length - 1, 1);                 jsonString.Append("]");                 if (jsonString.Length == 1)                 {                     return "[]";                 }                 return jsonString.ToString();             }             catch (Exception ex)             {                 throw ex;             }         }           /// <summary>          /// DataSet轉(zhuǎn)換為Json          /// </summary>          /// <param name="dataSet">DataSet對(duì)象</param>          /// <returns>Json字符串</returns>          public static string ToJson(DataSet dataSet)         {             return ToJson(dataSet, false);             //foreach (DataTable table in dataSet.Tables)             // {             //   jsonString +=ToJson(table) + ",";             // }             // jsonString = jsonString.TrimEnd(',');             // return jsonString + "}";         }         /// <summary>          /// DataSet轉(zhuǎn)換為Json          /// </summary>          /// <param name="dataSet">DataSet對(duì)象</param>          /// <returns>Json字符串</returns>          public static string ToJson(DataSet dataSet, bool isTableName)         {             string jsonString = "{";             foreach (DataTable table in dataSet.Tables)             {                 if (isTableName)                 {                     jsonString += "\"" + table.TableName + "\":" + ToJson(table) + ",";                 }                 else                 {                     jsonString += ToJson(table) + ",";                 }               }             jsonString = jsonString.TrimEnd(',');             return jsonString + "}";         }           /// <summary>         /// 過(guò)濾特殊字符         /// </summary>         /// <param name="s"></param>         /// <returns></returns>         public static string String2Json(String s)         {             StringBuilder sb = new StringBuilder();             for (int i = 0; i < s.Length; i++)             {                 char c = s.ToCharArray()[i];                 switch (c)                 {                     case '\"':                         sb.Append("\\\""); break;                     case '\\':                         sb.Append("\\\\"); break;                     case '/':                         sb.Append("\\/"); break;                     case '\b':                         sb.Append("\\b"); break;                     case '\f':                         sb.Append("\\f"); break;                     case '\n':                         sb.Append("\\n"); break;                     case '\r':                         sb.Append("\\r"); break;                     case '\t':                         sb.Append("\\t"); break;                     case '\v':                         sb.Append("\\v"); break;                     case '\0':                         sb.Append("\\0"); break;                     default:                         sb.Append(c); break;                 }             }             return sb.ToString();         }           /// <summary>         /// 格式化字符型、日期型、布爾型         /// </summary>         /// <param name="str"></param>         /// <param name="type"></param>         /// <returns></returns>         private static string StringFormat(string str, Type type)         {             if (type != typeof(string) && string.IsNullOrEmpty(str))             {                 str = "\"" + str + "\"";             }             else if (type == typeof(string))             {                 str = String2Json(str);                 str = "\"" + str + "\"";             }             else if (type == typeof(DateTime))             {                 str = "\"" + str + "\"";             }             else if (type == typeof(bool))             {                 str = str.ToLower();             }             else if (type == typeof(byte[]))             {                 str = "\"" + str + "\"";             }             else if (type == typeof(Guid))             {                 str = "\"" + str + "\"";             }             return str;         }             public static void RegistAjax(HtmlHead Header, Type type)         {             string assemblyName = type.FullName + "," + type.Assembly.FullName.Substring(0, type.Assembly.FullName.IndexOf(","));             if (type.Assembly.FullName.StartsWith("App_Code."))             {                 assemblyName = type.FullName + ",App_Code";             }             Literal l = new Literal();             l.Text = "\n<script type=\"text/javascript\" src=\"/ajaxpro/prototype.ashx\"></script>\n"             + "<script type=\"text/javascript\" src=\"/ajaxpro/core.ashx\"></script>\n"             + "<script type=\"text/javascript\" src=\"/ajaxpro/converter.ashx\"></script>\n"             + "<script type=\"text/javascript\" src=\"/ajaxpro/" + assemblyName + ".ashx\"></script>\n";             Header.Controls.Add(l);         }     } }


新聞名稱:jsonHelper
轉(zhuǎn)載源于:http://jinyejixie.com/article14/ippdde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄網(wǎng)站排名網(wǎng)站制作企業(yè)建站做網(wǎng)站、網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
建德市| 吉安市| 雷山县| 泰顺县| 宁国市| 突泉县| 莫力| 蓬安县| 七台河市| 德令哈市| 盐边县| 金坛市| 海丰县| 阜平县| 郁南县| 新河县| 株洲市| 海南省| 阿勒泰市| 上犹县| 丰城市| 京山县| 曲松县| 马边| 中卫市| 乌兰县| 永寿县| 嘉禾县| 武义县| 海宁市| 灵石县| 左贡县| 荣昌县| 鹰潭市| 太保市| 增城市| 多伦县| 金堂县| 当阳市| 湟中县| 利津县|