public static string JsonParse(OleDbDataReader dataReader) //DataRead转json
         {
             StringBuilder jsonString = new StringBuilder();
             jsonString.Append("[");
             while (dataReader.Read())
             {
                 jsonString.Append("{");
                 ; i < dataReader.FieldCount; i++)
                 {
                     Type type = dataReader.GetFieldType(i);
                     string strKey = dataReader.GetName(i);
                     string strValue = dataReader[i].ToString();
                     jsonString.Append("\"" + strKey + "\":");
                     strValue = JsonFormat(strValue, type);
                     )
                     {
                         jsonString.Append(strValue + ",");
                     }
                     else
                     {
                         jsonString.Append(strValue);
                     }
                 }
                 jsonString.Append("},");
             }
             dataReader.Close();
             jsonString.Remove(jsonString.Length - , );
             jsonString.Append("]");
             string rv = jsonString.ToString();
             if (rv == "]") { rv = ""; }
             return jsonString.ToString();
         }

         public static string JsonParse(DataTable dt)   //DataTable转json
         {
             DataRowCollection drc = dt.Rows;
             ) { return ""; }
             StringBuilder jsonString = new StringBuilder();
             jsonString.Append("[");
             ; i < drc.Count; i++)
             {
                 jsonString.Append("{");
                 ; 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 = JsonFormat(strValue, type);
                     )
                     {
                         jsonString.Append(strValue + ",");
                     }
                     else
                     {
                         jsonString.Append(strValue);
                     }
                 }
                 jsonString.Append("},");
             }
             jsonString.Remove(jsonString.Length - , );
             jsonString.Append("]");
             return jsonString.ToString();
         }

         public static string JsonFormat(string str, Type type)
         {
             if (type == typeof(string))
             {
                 StringBuilder sb = new StringBuilder();
                 ; i < str.Length; i++)
                 {
                     char c = str.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;
                     }
                 }
                 str = sb.ToString();
                 str = "\"" + str + "\"";
             }
             else if (type == typeof(DateTime))
             {
                 if (IsDateTime(str))
                 {
                     DateTime dt = DateTime.Parse(str);
                     str = ].ToString() + "\"";
                 }
                 else
                 {
                     str = "\"" + str + "\"";
                 }
                 // str = + str + ;
             }
             else
             {
                 str = "\"" + str + "\"";
             }
             return str;
         }
 public static bool IsDateTime(string str) //是否是日期格式(包含时间)
         {
             if (string.IsNullOrEmpty(str)) { return false; }
             //日期
             )
             {
                 return IsDate(str);
             }
             else
             {
                 string[] Astr = str.Split(' '); //日期+时间
                 )
                 {
                     ]) && System.Text.RegularExpressions.Regex.IsMatch(Astr[], @"^(20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$");
                 }
                 else
                 {
                     return false;
                 }
             }
         }

         public static bool IsTime(string StrSource)
         {
             return Regex.IsMatch(StrSource, @"^((20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d)$");
         }

 

Asp.net常用开发方法之DataTable/DataReader转Json格式代码的更多相关文章

  1. asp.net dataTable转换成Json格式

    /// <summary> /// dataTable转换成Json格式 /// </summary> /// <param name="dt"> ...

  2. LINQ查询返回DataTable类型[轉]與将DataTable序列化为Json格式【轉】

    (原文地址:http://xuzhihong1987.blog.163.com/blog/static/26731587201101853740294/) LINQ查询返回DataTable类型 在使 ...

  3. 将DataSet(DataTable)转换成JSON格式(生成JS文件存储)

    public static string CreateJsonParameters(DataTable dt) { /**/ /**/ /**/ /* /*********************** ...

  4. 将DataTable转换成Json格式

    方法一: 将DataTable数据拼接成json字符串,方法如下: ///<summary> /// dataTable转换成Json格式 ///</summary> ///& ...

  5. dataTable转换成Json格式

    #region dataTable转换成Json格式 /// <summary> /// /// </summary> /// <param name="dt& ...

  6. 把DataTable 转换成Json格式,适用于EasyUI 绑定DataGrid

    本文转载:http://www.cnblogs.com/liang--liang/archive/2013/02/05/2893030.html public static string DataTa ...

  7. .NET DataTable转化为json格式

    标准的json用“分隔,不用' public static string DataSetToJson(DataTable dt) {        string json = string.Empty ...

  8. 8-2 开发接口 (入参是json格式)

    1.开发入参事json格式的接口 import json import tools import flask from .check_session import check_session serv ...

  9. ASP.NET常用技巧方法代码断

    1. 打开新的窗口并传送参数:传送参数:response.write("<script>window.open('*.aspx?id="+this.DropDownLi ...

随机推荐

  1. Dynamics 365创建电子邮箱字段包含值的联系人同时更改负责人的方法。

    摘要: 本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复267或者20171129可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyon ...

  2. kafka原理和实践(二)spring-kafka简单实践

    系列目录 kafka原理和实践(一)原理:10分钟入门 kafka原理和实践(二)spring-kafka简单实践 kafka原理和实践(三)spring-kafka生产者源码 kafka原理和实践( ...

  3. udp和tcp

    tcp(Transmission Control Protocol 传输控制协议) 协议复杂,有序和可靠.编号和分段实现了有序,ACK(acknowledge)和重新发送实现了可靠. 滑窗实现了同时发 ...

  4. C/C++中如何接收return返回来的数组元素

    我们知道return语句作为被调用函数的结束,返回给调用者函数值.一般来说,是返回一个函数值,像一个int, double,char等类型的数据,当然也可以是他们的指针.但是当我们遇到要返回很多数怎么 ...

  5. Intellij自动下载导入框架包和常用快捷键

    忽然发现intellij尽然可以自动导入 框架所需的包,而且可以选择jar包版本,瞬间发现Maven,gradle管理jar包还得写配置文件弱爆了. 以Hibernate为例: 1.ProjectSt ...

  6. UWP 邮件反馈

    在我们构建App的时候,一个很人性化的设计就是增加邮件反馈渠道,就是让用户直接发邮件给你反馈. 当然,你也可以用系统自带的"反馈中心"(超级无敌难用,还经常打不开),或者使用商店的 ...

  7. Codeforces 558E A Simple Task

    题意:给定一个字符串,以及m次操作,每次操作对字符串的一个子区间进行升序或降序排序,求m次操作后的串 考虑桶排,发现线段树可以模拟桶排的过程,所以对26个字母分别建立线段树即可 #include< ...

  8. 记录一次参加D2前端技术论坛的杭州之行

    前言 在这里,闰土首先要感谢以下两位大佬提供的门票,分别是来自新浪微博部门的H同学,以及来自小米科技的D同学. 当我周六晚上在青旅写完这篇文章过后,第二天上网发现,已经有大佬提前一步在掘金上发布了高质 ...

  9. 一起talk C栗子吧(第一百二十六回:C语言实例--statickeyword)

    各位看官们,大家好,上一回中咱们说的内置宏的样例.这一回咱们说的样例是:static关键字. 闲话休提.言归正转. 让我们一起talk C栗子吧! 看官们,C语言提供了static关键字.它常常出如今 ...

  10. C# 文件去仅仅读工具-线程-技术&amp;分享

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...