博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
json转换
阅读量:6428 次
发布时间:2019-06-23

本文共 6123 字,大约阅读时间需要 20 分钟。

#region ParseToJson        public static string ParseToJson(DataTable dt)        {            StringBuilder JsonString = new StringBuilder();            //Exception Handling                    if (dt != null && dt.Rows.Count > 0)            {                JsonString.Append("[ ");                for (int i = 0; i < dt.Rows.Count; i++)                {                    JsonString.Append("{ ");                    for (int j = 0; j < dt.Columns.Count; j++)                    {                        if (j < dt.Columns.Count - 1)                        {                            JsonString.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":" + "\"" + FilterJson(dt.Rows[i][j].ToString()) + "\",");                        }                        else if (j == dt.Columns.Count - 1)                        {                            JsonString.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":" + "\"" + FilterJson(dt.Rows[i][j].ToString()) + "\"");                        }                    }                    if (i == dt.Rows.Count - 1)                    {                        JsonString.Append("} ");                    }                    else                    {                        JsonString.Append("}, ");                    }                }                JsonString.Append("]");                return JsonString.ToString();            }            else            {                return string.Empty;            }        }        public static string ParseToJson
(List
list, int rowCount) { string jsonStr = string.Empty; if (rowCount > 0) { jsonStr = ParseToJson
(list); jsonStr = "{ \"rowCount\": \"" + rowCount + "\", \"dataList\": " + jsonStr + " }"; } else { jsonStr = "{ \"rowCount\": \"0\"}"; } return jsonStr; } public static string ParseToJson
(List
list) { if (list != null && list.Count > 0) { PropertyInfo[] propertys = list[0].GetType().GetProperties(); // json StringBuilder jsonStr = new StringBuilder(); jsonStr.Append("["); for (int m = 0; m < list.Count; m++) { jsonStr.Append("{
"); for (int i = 0; i < propertys.Length; i++) { var vl = propertys[i].GetValue(list[m], null) ; vl = vl == DBNull.Value ? "" : propertys[i].GetValue(list[m], null); vl = vl ?? ""; jsonStr.AppendFormat("\"{0}\":\"{1}\"", propertys[i].Name, Utils2.FilterJson(vl.ToString())); if (i != propertys.Length - 1) { jsonStr.Append(","); } } jsonStr.Append("}"); if (m != list.Count - 1) { jsonStr.Append(","); } } jsonStr.Append("]"); return jsonStr.ToString(); } return string.Empty; } public static string ParseToJson(DataTable dt, int rowCount) { string jsonStr = string.Empty; if (rowCount > 0) { jsonStr = ParseToJson(dt); jsonStr = "{ \"rowCount\": \"" + rowCount + "\", \"dataList\": " + jsonStr + " }"; } else { jsonStr = "{ \"rowCount\": \"0\"}"; } return jsonStr; } #endregion #region ParseToJson { rowCount:0 } public static string ParseToJson(int rowCount, DataTable dt) { string jsonStr = string.Empty; if (dt != null && dt.Rows.Count > 0) { jsonStr = ParseToJson(dt); jsonStr = "{ \"rowCount\": \"" + rowCount + "\", \"dataList\": " + jsonStr + " }"; } else { jsonStr = "{ \"rowCount\": \"0\"}"; } return jsonStr; } public static string ParseToJson(object value) { string jsonStr = value != null ? value.ToString() : string.Empty; return "{\"jsonMsg\":\"" + jsonStr + "\"}"; } //权限 public static string PerssionTojson(object value) { string jsonStr = value != null ? value.ToString() : string.Empty; return "{\"Perssion\":\"" + jsonStr + "\"}"; } //权限 public static string SessionTojson(object value) { string jsonStr = value != null ? value.ToString() : string.Empty; return "{\"session\":\"" + jsonStr + "\"}"; } public static string LigeruiDataToJson
(List
list, int rowCount) { string jsonStr = string.Empty; if (rowCount > 0) { jsonStr = ParseToJson
(list); jsonStr = "{ \"Rows\":" + jsonStr + ",\"Total\":" + rowCount + " }"; } else { jsonStr = "{ \"Rows\":0,\"Total\":0 }"; } return jsonStr; } public static string LigeruiDataToJson(DataTable dt, int rowCount) { string jsonStr = string.Empty; if (rowCount > 0) { jsonStr = ParseToJson(dt); jsonStr = "{ \"Rows\":" + jsonStr + ",\"Total\":" + rowCount + " }"; } else { jsonStr = "{ \"Rows\":0,\"Total\":0 }"; } return jsonStr; } public static string FilterJson(string s) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < s.Length; i++) { char c = s[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"); sb.Append("
"); break; case '\r': sb.Append("\\r"); break; case '\t': sb.Append("\\t"); break; default: sb.Append(c); break; } } return sb.ToString(); } #endregion

 

转载于:https://www.cnblogs.com/muxueyuan/p/4482062.html

你可能感兴趣的文章
28个你必须知道的HTML5的新特性,技巧以及技术
查看>>
使用阿里云code和git管理项目
查看>>
Java Hibernate 之 CRUD 操作
查看>>
mysql 主从复制相关的日志文件
查看>>
Exchange Management Shell高效命令汇总
查看>>
九:Cocos2d-x的CCNode
查看>>
服务器的定义及分类
查看>>
JS CSS 批量压缩工具,直接支持对项目操作
查看>>
删除文件名为乱码的文件
查看>>
DB2联邦重点
查看>>
学会休息 学会工作 学会学习
查看>>
whoami命令使用方法
查看>>
android SQL 理解
查看>>
杂七杂八荟萃
查看>>
项目中使用mybatis,日志不输出问题
查看>>
Linux Tar Split压缩解压缩分片压缩解压缩
查看>>
Quartz2D
查看>>
jQuery温度计,支持摄氏度华氏度同时展示
查看>>
Cloudstack+Glusterfs+Kvm 集群(笔记)
查看>>
Dubbo与Zookeeper、SpringMVC整合和使用
查看>>