zoukankan      html  css  js  c++  java
  • DataTable转换成JSON字符串的函数

    public static string DataTableToJSON(DataTable table)
            {
                StringBuilder json = new StringBuilder();
                json.Append("[");
                for (int i = 0; i < table.Rows.Count; i++)
                {
                    DataRow row = table.Rows[i];

                    // json object
                    json.Append("{");
                    for (int j = 0; j < table.Columns.Count; j++)
                    {
                        string columnName = table.Columns[j].ColumnName;
                        string columnType = table.Columns[j].DataType.Name;

                        // json field
                        if (columnType == "Int32" || columnType == "Int16" || columnType == "Decimal")
                        {
                            // don't surround numbers with quotes
                            json.AppendFormat("\"{0}\":\"{1}\"", columnName, row.IsNull(columnName) ? "" : row[columnName]);
                        }
                        else if (columnType == "Boolean")
                        {
                            // make the bool value lowercase
                            json.AppendFormat("\"{0}\":{1}", columnName, row.IsNull(columnName) ? "" : row[columnName].ToString().ToLower());
                        }
                        else
                        {
                            // everything else gets quotes around the data
                            json.AppendFormat("\"{0}\":\"{1}\"", columnName, row[columnName]);
                        }

                        if (j < table.Columns.Count - 1) json.Append(","); // add comma if not last column
                    }
                    json.Append("}");

                    if (i < table.Rows.Count - 1) json.Append(","); // add comma if not last row
                }
                json.Append("]");
                return json.ToString();
            }

  • 相关阅读:
    一个bug案例分析
    《需求工程》阅读随笔-1.做什么和怎么做
    连贯接口(fluent interface)的Java实现及应用。
    代码覆盖率检测工具大全
    腾讯的一个移动端测试小工具GT
    用复制mysql/data 文件夹 下面的数据库的形式来复制数据库出现的问题
    淘客API升级后的解决方案,怎么采集淘宝的商品数据
    方维团购系统,给供货商添加省市地址
    支付宝担保交易收款接口使用
    方维分享系统首页,插入新品,用来做优化
  • 原文地址:https://www.cnblogs.com/cztom/p/1282448.html
Copyright © 2011-2022 走看看