zoukankan      html  css  js  c++  java
  • 集合生成Json格式

             /// <summary>     
            /// dataTable转换成Json格式     
            /// </summary>     
            /// <param name="dt"></param>     
            /// <returns></returns>     
            public static string ToJson(DataTable dt)
            {
                if (dt != null && dt.Rows.Count > 0)
                {
                    StringBuilder jsonBuilder = new StringBuilder();
                    jsonBuilder.Append("{\"");
                    jsonBuilder.Append("data");
                    jsonBuilder.Append("\":[");
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        jsonBuilder.Append("{");
                        for (int j = 0; j < dt.Columns.Count; j++)
                        {
                            jsonBuilder.Append("\"");
                            jsonBuilder.Append(dt.Columns[j].ColumnName);
                            jsonBuilder.Append("\":\"");
                            jsonBuilder.Append(jsonStringFromat(dt.Rows[i][j].ToString()));
                            jsonBuilder.Append("\",");
                        }
                        jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
                        jsonBuilder.Append("},");
                    }
                    jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
                    jsonBuilder.Append("]");
                    jsonBuilder.Append("}");
                    return jsonBuilder.ToString();
                }
                else
                {
                    return "";
                }
            }

            /// <summary>
            /// Enumerable转成JSON
            /// </summary>
            /// <param name="list"></param>
            /// <returns></returns>
            public static string EnumerableToJson(IEnumerable list)
            {
                StringBuilder json = new StringBuilder();
                int i = 0;
                if (list != null)
                {
                    json.Append("{\"data\":[");
                    foreach (var item in list)
                    {
                        json.Append("{");
                        PropertyInfo[] pi = item.GetType().GetProperties();
                        int j = 0;
                        foreach (var p in pi)
                        {
                            if (j < pi.Length - 1)
                            {
                                json.Append("\"" + p.Name.ToString() + "\":\"" + jsonStringFromat(p.GetValue(item, null).ToString()) + "\",");
                            }
                            else
                            {
                                json.Append("\"" + p.Name.ToString() + "\":\"" + jsonStringFromat(p.GetValue(item, null).ToString()) + "\"");
                            }
                            j++;
                        }
                        i++;
                        json.Append("},");
                    }
                    json.Remove(json.Length - 1, 1);
                    json.Append("]}");
                }
                if (i != 0)
                    return json.ToString();
                else
                    return "";
            }

  • 相关阅读:
    「最小生成树」[HAOI2006]聪明的猴子
    「打表」[Beijing wc2012]算不出的算式
    『看毛片』kmp字符串匹配算法
    「主席树」[Ctsc2018]混合果汁
    Aiiage Camp Day3 B Bipartite
    Aiiage Camp Day2 D domino
    Aiiage Camp Day1 H Littrain wanna be rich
    Aiiage Camp Day1 E Littrain wanna be small
    Aiiage Camp Day1 C Littrain wanna be different
    Aiiage Camp Day1 A Littrain is a loser, in 2018
  • 原文地址:https://www.cnblogs.com/ajun/p/2913923.html
Copyright © 2011-2022 走看看