- #region 将datatable格式转换成 json格式
public static string DataSetToJson(DataTable dt)
{
string json = string.Empty;
try
{
if (dt == null || dt.Rows.Count == 0)
{
return "";
}
json = "{";
json += "‘table" + 1 + "‘:[";
for (int i = 0; i < dt.Rows.Count; i++)
{
json += "{";
for (int j = 0; j < dt.Columns.Count; j++)
{
json += "‘" + dt.Columns[j].ColumnName + "‘:‘" + dt.Rows[i][j].ToString() + "‘";
if (j != dt.Columns.Count - 1)
{
json += ",";
}
}
json += "}";
if (i != dt.Rows.Count - 1)
{
json += ",";
}
}
json += "]";
json += "}";
}
catch (Exception ex)
{throw new Exception(ex.Message);
}
return json;
}
#endregion - #region 将json格式解析成datatable格式
public static DataTable JsonToDataTable(string strJson)
{//取出表名
Regex rg = new Regex(@"(?<={)[^:]+(?=:/\[)", RegexOptions.IgnoreCase);
string strName = rg.Match(strJson).Value;
DataTable tb = null;
//去除表名
strJson = strJson.Substring(strJson.IndexOf("[") + 1);
strJson = strJson.Substring(0, strJson.IndexOf("]"));//获取数据
rg = new Regex(@"(?<={)[^}]+(?=})");
MatchCollection mc = rg.Matches(strJson);
for (int i = 0; i < mc.Count; i++)
{
string strRow = mc[i].Value;
string[] strRows = strRow.Split(‘,‘);//创建表
if (tb == null)
{
tb = new DataTable();
tb.TableName = strName;
foreach (string str in strRows)
{
DataColumn dc = new DataColumn();string[] strCell = str.Split(‘:‘);
dc.ColumnName = strCell[0].ToString().Trim().Replace("‘", "");
// row[dc.ColumnName] = strCell[1].ToString();
tb.Columns.Add(dc);
// t .Columns[strCell[0].ToString()].te
}tb.AcceptChanges();
}
DataRow row = tb.NewRow();foreach (var item in strRows)
{
string[] strCell1 = item.Split(‘:‘);
string lie = strCell1[0].ToString().Trim().Replace("‘", "");
string zhi = strCell1[1].ToString().Trim().Replace("‘", "");
// row[strCell1[0].ToString()] = strCell1[1].ToString();
row[lie] = zhi;
}
tb.Rows.Add(row);
// t .Columns[strCell[0].ToString()].te
}
tb.AcceptChanges();
return tb;
}
#endregion
asp.net json和Datatable格式的相互转化
时间: 2024-12-26 06:02:58
asp.net json和Datatable格式的相互转化的相关文章
json与DataTable相互转换
首先我们看看 Newtonsoft.Json.JsonConvert 是怎么完成的: DataTable table = new DataTable(); table.Columns.Add("id"); table.Columns.Add("name"); table.Columns.Add("url"); table.Rows.Add("1", "zhengdjin", "http://blo
json转datatable(正则表达式的方法)
/// <summary> /// 将json转换为DataTable /// </summary> /// <param name="strJson">得到的json</param> /// <returns></returns> private DataTable JsonToDataTable(string strJson) { //转换json格式 strJson = strJson.Replace(&qu
asp.net json 与xml 的基础事例
1 //json序列化和反序列化 using System.Runtime.Serialization.Json; 2 public static string JsonSerializer<T>(T t) 3 { 4 DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T)); 5 MemoryStream ms = new MemoryStream(); 6 ser.WriteObject(ms, t
c# 将json转换为DataTable
/// <summary> /// 将json转换为DataTable /// </summary> /// <param name="strJson">得到的json</param> /// <returns></returns> public static DataTable JsonToDataTable(string strJson) { //转换json格式 strJson = strJson.Repla
C#实现将json转换为DataTable的方法
本文实例讲述了C#实现将json转换为DataTable的方法.分享给大家供大家参考.具体实现方法如下: 代码如下: #region 将json转换为DataTable /// <summary> /// 将json转换为DataTable /// </summary> /// <param name="strJson">得到的json</param> /// <returns></returns> private
ASP生成JSON数据
原文地址为:ASP生成JSON数据 < %@LANGUAGE = " VBSCRIPT " CODEPAGE = " 65001 " % > < ! -- #include file = " json.asp " --> < ! -- #include file = " inc/Conn.asp " --> < %response.ContentType = "
将json的时间格式转换成正常的时间格式
/** * 对Date的扩展,将 Date 转化为指定格式的String * 月(M).日(d).12小时(h).24小时(H).分(m).秒(s).周(E).季度(q) 可以用 1-2 个占位符 * 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) * eg: * (new Date()).pattern("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423 * (new Date())
Json 的日期格式转换成DateTime
JSON 的日期形式:"/Date(1242357713797+0800)/" , 下面我们就用以下C#的方法将他转换成DateTime类型: /// <summary> /// Json 的日期格式与.Net DateTime类型的转换/// </summary> /// <param name="jsonDate">Json 的日期,例如:/Date(928120800000+0800)/</param> ///
JSON的基本格式以及与JavaScript之间的转换
JSON的基本格式以及与JavaScript之间的转换 近来,发现很多人写json格式的数据时,总是没有达到JSON的规范,虽然在语言要求不严格的情况下能够通过, 但是,难免会遇到这样那样的问题,到时候再做修改,担心为时晚矣,故计划写此博文. JSON的语法规则: 1.数据需要以键值对的形式书写: e g: { "name" : "zychao" } 2.数据与数据之间需要通过逗号分隔: e g: { "name" : "zychao&