亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? convertjson.cs

?? c#常用類庫大全
?? CS
字號:
?using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Reflection;
using System.Collections;
using System.Data.Common;

public class ConvertJson
{
    #region 私有方法
    /// <summary>
    /// 過濾特殊字符
    /// </summary>
    private 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;
                default:
                    sb.Append(c); break;
            }
        }
        return sb.ToString();
    }

    /// <summary>
    /// 格式化字符型、日期型、布爾型
    /// </summary>
    private static string StringFormat(string str, Type type)
    {
        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(string) && string.IsNullOrEmpty(str))
        {
            str = "\"" + str + "\"";
        }
        return str;
    }
    #endregion

    #region List轉(zhuǎn)換成Json
    /// <summary>
    /// List轉(zhuǎn)換成Json
    /// </summary>
    public static string ListToJson<T>(IList<T> list)
    {
        object obj = list[0];
        return ListToJson<T>(list, obj.GetType().Name);
    }

    /// <summary>
    /// List轉(zhuǎn)換成Json 
    /// </summary>
    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 = pi[j].GetValue(list[i], null).GetType();
                    Json.Append("\"" + pi[j].Name.ToString() + "\":" + StringFormat(pi[j].GetValue(list[i], null).ToString(), type));

                    if (j < pi.Length - 1)
                    {
                        Json.Append(",");
                    }
                }
                Json.Append("}");
                if (i < list.Count - 1)
                {
                    Json.Append(",");
                }
            }
        }
        Json.Append("]}");
        return Json.ToString();
    }
    #endregion

    #region 對象轉(zhuǎn)換為Json
    /// <summary> 
    /// 對象轉(zhuǎn)換為Json 
    /// </summary> 
    /// <param name="jsonObject">對象</param> 
    /// <returns>Json字符串</returns> 
    public static string ToJson(object jsonObject)
    {
        string jsonString = "{";
        PropertyInfo[] propertyInfo = jsonObject.GetType().GetProperties();
        for (int i = 0; i < propertyInfo.Length; i++)
        {
            object objectValue = propertyInfo[i].GetGetMethod().Invoke(jsonObject, null);
            string value = string.Empty;
            if (objectValue is DateTime || objectValue is Guid || objectValue is TimeSpan)
            {
                value = "'" + objectValue.ToString() + "'";
            }
            else if (objectValue is string)
            {
                value = "'" + ToJson(objectValue.ToString()) + "'";
            }
            else if (objectValue is IEnumerable)
            {
                value = ToJson((IEnumerable)objectValue);
            }
            else
            {
                value = ToJson(objectValue.ToString());
            }
            jsonString += "\"" + ToJson(propertyInfo[i].Name) + "\":" + value + ",";
        }
        jsonString.Remove(jsonString.Length - 1, jsonString.Length);
        return jsonString + "}";
    }
    #endregion

    #region 對象集合轉(zhuǎn)換Json
    /// <summary> 
    /// 對象集合轉(zhuǎn)換Json 
    /// </summary> 
    /// <param name="array">集合對象</param> 
    /// <returns>Json字符串</returns> 
    public static string ToJson(IEnumerable array)
    {
        string jsonString = "[";
        foreach (object item in array)
        {
            jsonString += ToJson(item) + ",";
        }
        jsonString.Remove(jsonString.Length - 1, jsonString.Length);
        return jsonString + "]";
    }
    #endregion

    #region 普通集合轉(zhuǎn)換Json
    /// <summary> 
    /// 普通集合轉(zhuǎn)換Json 
    /// </summary> 
    /// <param name="array">集合對象</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 + "]";
    }
    #endregion

    #region  DataSet轉(zhuǎn)換為Json
    /// <summary> 
    /// DataSet轉(zhuǎn)換為Json 
    /// </summary> 
    /// <param name="dataSet">DataSet對象</param> 
    /// <returns>Json字符串</returns> 
    public static string ToJson(DataSet dataSet)
    {
        string jsonString = "{";
        foreach (DataTable table in dataSet.Tables)
        {
            jsonString += "\"" + table.TableName + "\":" + ToJson(table) + ",";
        }
        jsonString = jsonString.TrimEnd(',');
        return jsonString + "}";
    }
    #endregion

    #region Datatable轉(zhuǎn)換為Json
    /// <summary> 
    /// Datatable轉(zhuǎn)換為Json 
    /// </summary> 
    /// <param name="table">Datatable對象</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("]");
        return jsonString.ToString();
    }

    /// <summary>
    /// DataTable轉(zhuǎn)換為Json 
    /// </summary>
    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].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();
    }
    #endregion

    #region DataReader轉(zhuǎn)換為Json
    /// <summary> 
    /// DataReader轉(zhuǎn)換為Json 
    /// </summary> 
    /// <param name="dataReader">DataReader對象</param> 
    /// <returns>Json字符串</returns> 
    public static string ToJson(DbDataReader dataReader)
    {
        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("},");
        }
        dataReader.Close();
        jsonString.Remove(jsonString.Length - 1, 1);
        jsonString.Append("]");
        return jsonString.ToString();
    }
    #endregion
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
视频一区二区三区在线| 日本韩国精品在线| 99免费精品视频| 一本色道**综合亚洲精品蜜桃冫| 欧美精品123区| 日韩理论片在线| 九九九精品视频| 色综合激情五月| 国产欧美日韩在线| 日韩av电影免费观看高清完整版在线观看| 国产精品一二三区| 欧美一级欧美一级在线播放| 亚洲精品乱码久久久久久久久| 国产一区二区精品久久| 欧美美女一区二区三区| 亚洲视频在线观看一区| 激情综合色综合久久| 国产精品久线观看视频| 六月丁香婷婷久久| 91久久精品午夜一区二区| 久久精品夜色噜噜亚洲a∨| 午夜精品久久一牛影视| 欧美性大战久久久久久久蜜臀 | 欧美国产精品一区二区三区| 偷拍一区二区三区| 欧美午夜电影一区| 综合久久一区二区三区| 国产91露脸合集magnet| 精品国产三级电影在线观看| 蜜臀av性久久久久蜜臀aⅴ| 欧美另类变人与禽xxxxx| 亚洲最大成人网4388xx| 91小视频在线免费看| 国产精品美女久久久久久久网站| 韩国女主播一区| 精品国产乱码久久久久久蜜臀| 婷婷中文字幕综合| 欧美日韩亚洲综合一区二区三区| 一色屋精品亚洲香蕉网站| 国产精品538一区二区在线| 精品福利一二区| 黑人巨大精品欧美黑白配亚洲| 欧美本精品男人aⅴ天堂| 久久精品久久99精品久久| 日韩精品在线看片z| 美腿丝袜在线亚洲一区| 精品国产一区二区三区不卡| 精一区二区三区| 久久久久久久免费视频了| 国产伦精品一区二区三区视频青涩 | 亚洲三级电影全部在线观看高清| 国产专区欧美精品| 日本美女视频一区二区| 91麻豆精品国产91久久久久久| 日韩精品乱码免费| 精品国产一区二区三区四区四| 国产999精品久久| 亚洲欧美日韩一区二区| 欧美少妇一区二区| 久久国产精品99久久久久久老狼| 国产亚洲一区二区三区在线观看| 国产91色综合久久免费分享| 亚洲一区在线观看视频| 日韩精品一区二区三区中文精品| 国产91精品露脸国语对白| 樱桃视频在线观看一区| 欧美一级精品大片| 成人午夜精品在线| 午夜精品福利久久久| 久久久久久久久久美女| 91老司机福利 在线| 蜜臀av一区二区在线免费观看 | 精品99一区二区| 99久久精品国产导航| 日韩精品国产欧美| 欧美高清在线视频| 亚洲人成影院在线观看| 91精品福利在线一区二区三区 | 精品亚洲免费视频| 综合婷婷亚洲小说| 精品国产一区二区三区av性色| 色吊一区二区三区| 国产主播一区二区| 午夜a成v人精品| 国产精品高潮呻吟| 精品日韩欧美在线| 欧美色综合久久| 不卡视频免费播放| 精品夜夜嗨av一区二区三区| 亚洲午夜电影网| 亚洲欧洲成人自拍| 精品国产精品网麻豆系列| 欧美日韩在线播放三区| 国产91精品欧美| 国产在线视频一区二区| 亚洲成国产人片在线观看| 国产精品美女久久久久久久久| 欧美一区二区三区免费观看视频| 91在线观看免费视频| 粉嫩一区二区三区在线看 | 亚洲一区二区精品3399| 中文成人av在线| 精品国产免费人成在线观看| 欧美一区二区在线免费播放| 欧美影院一区二区| 99久久免费精品高清特色大片| 国产自产v一区二区三区c| 免费在线观看视频一区| 视频精品一区二区| 午夜电影网一区| 亚洲尤物在线视频观看| 亚洲尤物视频在线| 一区二区激情视频| 亚洲免费视频中文字幕| 亚洲欧美日韩人成在线播放| 中文字幕中文字幕一区| 国产精品色婷婷久久58| 成人欧美一区二区三区在线播放| 久久精品夜夜夜夜久久| 国产精品热久久久久夜色精品三区| 精品国产99国产精品| 久久欧美中文字幕| 久久久精品蜜桃| 欧美国产精品劲爆| 中文字幕一区二区三中文字幕| 国产精品久久久久久久久免费樱桃| 欧美国产日本视频| 国产精品久久久久久久久动漫 | 欧美变态tickle挠乳网站| 欧美不卡激情三级在线观看| 久久久久久97三级| 国产精品理伦片| 亚洲乱码国产乱码精品精小说| 亚洲丰满少妇videoshd| 日本女人一区二区三区| 国产精品一二三四区| 99久久精品99国产精品 | 99精品偷自拍| 在线观看亚洲专区| 欧美日本在线播放| 精品成人一区二区| 亚洲私人黄色宅男| 午夜久久久久久久久久一区二区| 蜜桃久久精品一区二区| 成人网在线播放| 欧美在线一二三四区| 欧美一级二级三级蜜桃| 国产日韩欧美一区二区三区综合| 欧美高清在线精品一区| 亚洲国产综合人成综合网站| 久久se精品一区精品二区| www.亚洲色图.com| 337p亚洲精品色噜噜| 久久精品欧美一区二区三区麻豆| 亚洲免费观看高清在线观看| 视频一区欧美日韩| 懂色av一区二区夜夜嗨| 欧美日韩不卡一区| 国产亚洲欧美激情| 亚洲成人av一区二区三区| 福利91精品一区二区三区| 欧美日精品一区视频| 国产人久久人人人人爽| 亚洲成人综合网站| 成人性生交大片免费| 欧美视频在线一区二区三区| 国产日产欧美一区二区视频| 亚洲1区2区3区视频| 国产91丝袜在线播放| 日韩一级完整毛片| 亚洲久草在线视频| 久久er99精品| 欧美日韩激情一区二区| 国产精品国产三级国产有无不卡| 热久久一区二区| 欧美性受xxxx| 国产精品麻豆欧美日韩ww| 乱一区二区av| 欧美一卡二卡在线| 一级精品视频在线观看宜春院| 国产精品资源网站| 日韩三级伦理片妻子的秘密按摩| 亚洲自拍都市欧美小说| av激情亚洲男人天堂| 国产日韩欧美精品一区| 久久精品免费看| 日韩欧美一区二区免费| 偷拍一区二区三区四区| 欧美网站一区二区| 亚洲欧美日韩中文字幕一区二区三区| 国产乱妇无码大片在线观看| 日韩精品一区二区三区三区免费| 五月天亚洲精品| 欧美在线你懂的| 亚洲精品国产精品乱码不99| 99久久精品国产精品久久| 中文字幕日本不卡| 成人中文字幕合集| 国产精品毛片久久久久久| 国产v日产∨综合v精品视频|